WPF边框厚度增加方向

mor*_*anu 10 wpf border thickness

嘿.另一个WPF问题.在我的XAML代码中,我有一个边框:

<Border x:Name="myBorder" Background="AliceBlue" 
    Width="200" Height="200" 
    BorderThickness="10" BorderBrush="Black">
</Border>
Run Code Online (Sandbox Code Playgroud)

在代码中的某处我增加了BorderThickness

double thickness = myBorder.BorderThickness.Bottom + 2;
myBorder.BorderThickness = new Thickness(thickness);
Run Code Online (Sandbox Code Playgroud)

结果是边框的重量增加但不在200x200宽度 - 高度之外,而是在内部,减小了尺寸.有没有办法做相反的事情?

mel*_*etz 9

实际上,您应该在边框的内部或外部控件上设置宽度和高度,而不是在边框本身上.然后,您可以为边框设置负边距,等于减去边框粗细的值.这样的事情应该是诀窍:

<Border x:Name="myBorder" Background="AliceBlue" 
Margin="-10,-10,-10,-10" BorderThickness="10" BorderBrush="Black">
    <Button Background="Red" Content="Test" Width="200" Height="200"></Button>
</Border>
Run Code Online (Sandbox Code Playgroud)