2010-04-12 11 views
10

Hey. Eine weitere WPF-Frage. In meinem XAML-Code habe ich eine Grenze:WPF Rand Dicke Richtung erhöhen

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

und irgendwo im Code erhöhe ich die BorderThickness

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

und das Ergebnis ist, dass das Gewicht erhöht sich die Grenze aber nicht außerhalb der 200x200 Breite-Höhe, aber inner, verkleinert die Dimension. Gibt es eine Möglichkeit, das Gegenteil zu tun?

Antwort

8

Nun, eigentlich sollten Sie die Breite und Höhe auf der inneren oder äußeren Kontrolle der Grenze, nicht auf der Grenze selbst. Dann können Sie einen negativen Rand für den Rand festlegen, gleich minus dem Wert der Randstärke. So etwas sollte zum Trick gehören:

<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> 
0

Es sieht so aus, als müssten Sie die Breite und Höhe entsprechend erhöhen.