2010-04-12 10 views
10

Hey. Otra pregunta de WPF. En mi código XAML tengo una frontera:Grosor del borde WPF aumentar la dirección

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

y en algún lugar en el código de aumento la BorderThickness

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

y el resultado es que el peso aumenta de la frontera, pero no fuera de la anchura-altura de 200x200, pero interior, disminuyendo la dimensión. ¿Hay alguna manera de hacer lo opuesto?

Respuesta

8

Bueno, en realidad debe establecer el ancho y la altura en el control interno o externo del borde, no en el borde mismo. Luego puede establecer un margen negativo para el borde, igual a menos el valor del grosor del borde. Algo como esto debería ser el truco:

<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

Parece que necesita aumentar el ancho y la altura en consecuencia.

Cuestiones relacionadas