Silverlight - 边框



在布局用户界面时,另一个需要牢记的有用元素是边框(Border)。它不是一个面板,因为它只能包含一个子元素,但它通常用于在布局中引入一些额外的空间。

  • 它允许您在边框外部添加边距(Margin),并在内容周围添加填充(Padding)。

  • 顾名思义,它还可以在其内容周围绘制边框。

  • 这是一个矩形边框,可以选择圆角。例如,假设我想在我的 ScrollViewer 中的形状周围添加一些空间和轮廓。

以下是Border类的常用属性

序号 属性及描述
1

ActualHeight

获取 FrameworkElement 的渲染高度。请参阅备注。(继承自 FrameworkElement)

2

ActualWidth

获取 FrameworkElement 的渲染宽度。请参阅备注。(继承自 FrameworkElement)

3

AllowDrop

获取或设置一个值,该值确定此 UIElement 是否可以作为拖放操作的放置目标。(继承自 UIElement)

4

Background

获取或设置填充边框背景(内部区域)的画刷。

5

BackgroundProperty

标识 Background 依赖项属性。

6

CanDrag

获取或设置一个值,该值指示元素是否可以作为拖放操作中的数据被拖动。(继承自 UIElement)

7

Child

获取或设置要在其周围绘制边框的子元素。

8

Height

获取或设置 FrameworkElement 的建议高度。(继承自 FrameworkElement)

9

HorizontalAlignment

获取或设置当 FrameworkElement 在布局父级(如面板或项目控件)中组合时应用于它的水平对齐特征。(继承自 FrameworkElement)

10

Margin

获取或设置 FrameworkElement 的外部边距。(继承自 FrameworkElement)

11

MaxHeight

获取或设置 FrameworkElement 的最大高度约束。(继承自 FrameworkElement)

12

MaxWidth

获取或设置 FrameworkElement 的最大宽度约束。(继承自 FrameworkElement)

13

MinHeight

获取或设置 FrameworkElement 的最小高度约束。(继承自 FrameworkElement)

14

MinWidth

获取或设置 FrameworkElement 的最小宽度约束。(继承自 FrameworkElement)

15

Name

获取或设置对象的标识名称。当 XAML 处理器从 XAML 标记创建对象树时,运行时代码可以通过此名称引用 XAML 声明的对象。(继承自 FrameworkElement)

16

Opacity

获取或设置对象的透明度。(继承自 UIElement)

17

Padding

获取或设置边框与其子对象之间的距离。

18

Resources

获取本地定义的资源字典。在 XAML 中,您可以将资源项作为 frameworkElement.Resources 属性元素的子对象元素建立,通过 XAML 隐式集合语法。(继承自 FrameworkElement)

19

Style

获取或设置在布局和渲染期间应用于此对象的实例样式。(继承自 FrameworkElement)

20

VerticalAlignment

获取或设置当 FrameworkElement 在父对象(如面板或项目控件)中组合时应用于它的垂直对齐特征。(继承自 FrameworkElement)

21

Visibility

获取或设置 UIElement 的可见性。不可见的 UIElement 不会呈现,也不会将其所需的大小传达给布局。(继承自 UIElement)

22

Width

获取或设置 FrameworkElement 的宽度。(继承自 FrameworkElement)

Border 类具有以下方法。它还继承自Object类的方法

序号 方法及描述
1

Arrange

定位子对象并确定UIElement的大小。实现其子元素自定义布局的父对象应从其布局重写实现中调用此方法,以形成递归布局更新。(继承自 UIElement)

2

ArrangeOverride

提供布局的 Arrange 阶段的行为。类可以重写此方法以定义其自己的 Arrange 阶段行为。(继承自 FrameworkElement)

3

FindName

检索具有指定标识符名称的对象。(继承自 FrameworkElement)

4

GetValue

从 DependencyObject 返回依赖项属性的当前有效值。(继承自 DependencyObject)

5

SetBinding

使用提供的绑定对象将绑定附加到 FrameworkElement。(继承自 FrameworkElement)

6

SetValue

设置 DependencyObject 上依赖项属性的本地值。(继承自 DependencyObject)

7

StartDragAsync

启动拖放操作。(继承自 UIElement)

8

UpdateLayout

确保 UIElement 的所有子对象的位置都已正确更新以进行布局。(继承自 UIElement)

Border 类具有以下事件 -

序号 事件及描述
1

DragEnter

当输入系统报告以该元素为目标的基础拖动事件时发生。(继承自 UIElement)

2

DragLeave

当输入系统报告以该元素为源的基础拖动事件时发生。(继承自 UIElement)

3

DragOver

当输入系统报告以该元素为潜在放置目标的基础拖动事件时发生。(继承自 UIElement)

4

DragStarting

当拖动操作启动时发生。(继承自 UIElement)

5

Drop

当输入系统报告以该元素为放置目标的基础放置事件时发生。(继承自 UIElement)

6

DropCompleted

当拖放操作结束时发生。(继承自 UIElement)

7

KeyDown

当 UIElement 具有焦点时按下键盘键时发生。(继承自 UIElement)

8

KeyUp

当 UIElement 具有焦点时释放键盘键时发生。(继承自 UIElement)

9

LayoutUpdated

当可视化树的布局发生更改时发生,这是由于布局相关属性的值发生更改或某些其他刷新布局的操作。(继承自 FrameworkElement)

10

Loaded

当 FrameworkElement 已构造并添加到对象树中,并且已准备好进行交互时发生。(继承自 FrameworkElement)

11

Loading

当 FrameworkElement 开始加载时发生。(继承自 FrameworkElement)

12

ManipulationCompleted

当对 UIElement 的操作完成时发生。(继承自 UIElement)

示例

让我们看一个简单的示例,其中添加了边框和内部边框矩形。

<UserControl x:Class = "ScrollViewerExample.MainPage" 
   xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
   xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml" 
   xmlns:d = "http://schemas.microsoft.com/expression/blend/2008" 
   xmlns:mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" 
   mc:Ignorable = "d" 
   d:DesignHeight = "300" d:DesignWidth = "400">
   
   <Grid x:Name = "LayoutRoot" Background = "White"> 
	
      <Border BorderBrush = "Blue" BorderThickness = "10" 
         Margin = "5" CornerRadius = "80" Padding = "80"> 
            <Rectangle Fill = "Gray" Width = "116" Height = "75" />  
      </Border>  
		
   </Grid> 
	
</UserControl>

当编译并执行上述代码时,您将看到以下输出。

Border Rectangle

Border 通过CornerRadius属性支持圆角。

silverlight_constrained_vs_unconstrained.htm
广告