10

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

<Border x:Name="myBorder" Background="AliceBlue" 
    Width="200" Height="200" 
    BorderThickness="10" BorderBrush="Black">
</Border>

在代码的某个地方我增加了 BorderThickness

double thickness = myBorder.BorderThickness.Bottom + 2;
myBorder.BorderThickness = new Thickness(thickness);

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

4

2 回答 2

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>
于 2010-04-12T13:11:41.630 回答
0

看起来您需要相应地增加宽度和高度。

于 2010-04-12T11:30:04.337 回答