Border类非常简单。它只能包含一段嵌套内容(通常是布局面板),并为其添加背景或在其周围添加边框。为了深入地理解Border控件,只需要掌握表中列出的属性就可以了。
表 Border类的属性
Background | 使用Brush对象设置边框中所有内容后面的背景。可使用固定颜色背景,也可使用其他更特殊的背景 |
BorderBrush和 BroderThickness |
使用Brush对象设置位于Border对象边缘的边框的颜色,并设置边框的宽度。为显示边框,必须设置这两个属性 |
CornerRadius | 该属性可使边框具有雅致的圆角。CornerRadius的值越大,圆角效果就越明显 |
Padding | 该属性在边框和内部的内容之间添加空间(与此相对,Margin属性在边框之外添加空间) |
名称 | 说明 |
下面是一个具有轻微圆角效果的简单边框,该边框位于一组按钮的周围,这组按钮包含在一个StackPanel面板中:
<Border Margin="5" Padding="5" Background="LightYellow" BorderBrush="SteelBlue" BorderThickness="3,5,3,5" CornerRadius="3" VerticalAlignment="Top"> <StackPanel> <Button Margin="3">One</Button> <Button Margin="3">Two</Button> <Button Margin="3">Three</Button> </StackPanel> </Border>
也可以直接放在控件外部,不和布局面板一起使用。
例如在label控件外面直接加Border:
<Border Margin="0,6,4,6" BorderBrush="SteelBlue" BorderThickness="3,3,3,3" CornerRadius="3" VerticalAlignment="Top"> <Label Content="Normal" Name="lable1" Background="White" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" Height="30" VerticalAlignment="Center" /> </Border>效果如下图中最左边的
从技术角度看,Border是一个装饰元素(decorator),装饰元素是特定类型的元素,通常用于在一个对象周围添加某些种类的图形装饰。所有装饰元素都继承自System.Windows.Controls.Decorator类。大多数装饰元素设计用于特定控件。例如,Button控件使用ButtonChrome装饰元素,以获取其特有的圆角和阴影背景效果;而ListBox控件使用ListBoxChrome装饰元素。还有两个更通用的装饰元素,当构造用户界面时它们非常有用。