WPF 控件专题 Border控件详解
1、Border介绍
Border(边框)是一个装饰的控件,此控件绘制一个边框、一个背景。Border 中只能有一个子控件(Child),若要显示多个子元素,需要在父Border元素中放置一个附加Panel元素,然后可以将子元素放置在该 Panel 元素中。
**************************************************************************************************************
2、Border 的几个常用的属性介绍
Background:填充 Border 边界之间的区域或者说是绘制该区域的背景,是一个Brush对象。
BorderBrush:用于绘制外部边框颜色,是Brush对象。
BorderThickness:设置 Border 边框的宽度,是Thickness(描述矩形周围框架的粗细)对象。
CornerRadius:该值表示将 Border 的角倒圆的程度,设置四周的圆角大小。
Effect:获取或设置要应用于 UIElement 的位图效果。
HorizontalAlignment:在父元素(如 Panel 或项控件)中组合此元素时所应用的水平对齐特征。
VerticalAlignment:在父元素(如面板或项控件)中组合此元素时所应用的垂直对齐特征。
IsEnabled:该值指示是否在用户界面中启用此元素 (UI),使能,可用或者不可用。
IsHitTestVisible:该值声明是否可以返回此元素作为其呈现内容的某些部分的点击测试结果;简单的说是点击时是否穿透该控件。
IsMouseOver 该值指示鼠标指针是否位于此元素(包括可视化树中的子元素)的上方。大多用于属性触发器,改变Border的外观的显示。
Margin:获取或设置元素的外边距。
Height/Width:高度/宽度。 MaxHeight/MaxWidth:最大高度/最大宽度。 MinHeight/MinWidth:最小高度/最小宽度。
Name:元素的标识名称。该名称提供引用,以便代码隐藏(如事件处理程序代码)可在 XAML 处理器处理期间构造标记元素后引用它。
Opacity:透明度。
Padding:获取或设置描述Thickness及其子元素之间的空间量的Border值。
Visibility:可见性。
SnapsToDevicePixels:对齐设备像素;如果元素应以符合呈现到设备像素为true ,否则为false。用于抗锯齿
**************************************************************************************************************
3、具体示例
<!-- 基本属性使用 -->
<Border x:Name="border1" Margin="10" Width="280" Height="100" Background="#555a64" BorderBrush="Cyan" BorderThickness="1 1 1 1" CornerRadius="5 5 5 5" HorizontalAlignment="Left" VerticalAlignment="Top"><Button Content="Border 的子元素" Width="120" Height="35"/>
</Border>
<!-- 添加多个子元素 -->
<Border x:Name="border2" Margin="10" Width="280" Height="100" Background="#555a64" BorderBrush="Cyan" BorderThickness="1 1 1 1" CornerRadius="5 5 5 5" HorizontalAlignment="Left" VerticalAlignment="Top"><UniformGrid><!-- 也可使用Grid、StackPanel、Canvas、WrapPanel、DockPanel等 添加多个子元素--> <Button Content="Border 的子元素1" Width="120" Height="35"/><Button Content="Border 的子元素2" Width="120" Height="35"/><Button Content="Border 的子元素3" Width="120" Height="35"/></UniformGrid>
</Border>
<!-- 透明度设置 -->
<Border x:Name="border3" Margin="10" Width="280" Height="100" Background="#555a64" BorderBrush="Cyan" BorderThickness="1 1 1 1" CornerRadius="5 5 5 5" HorizontalAlignment="Left" VerticalAlignment="Top" Opacity="0.5"><Button Content="Border 的子元素1" Width="120" Height="35"/>
</Border>
<!-- 使能设置 同时对Border里面的子元素起作用 -->
<Border x:Name="border4" Margin="10" Width="280" Height="100" Background="#555a64" BorderBrush="Cyan" BorderThickness="1 1 1 1" CornerRadius="5 5 5 5" HorizontalAlignment="Left" VerticalAlignment="Top" IsEnabled="False"><Button Content="Border 的子元素1" Width="120" Height="35"/>
</Border>
<!-- 阴影设置 -->
<Border x:Name="border5" Margin="10" Width="280" Height="100" Background="#555a64" BorderBrush="Cyan" BorderThickness="1 1 1 1" CornerRadius="5 5 5 5" HorizontalAlignment="Left" VerticalAlignment="Top"><Border.Effect><DropShadowEffect Color="White" BlurRadius="15" ShadowDepth="2" Opacity="0.35" Direction="270"/></Border.Effect>
</Border>
<!-- Border 可见性 Collapsed:隐藏,不保留布局空间;Hidden:隐藏,保留布局空间;Visible:可见 -->
<Border x:Name="border6" Visibility="Hidden" Margin="10" Width="280" Height="100" Background="#555a64" BorderBrush="Cyan" BorderThickness="1 1 1 1" CornerRadius="5 5 5 5" HorizontalAlignment="Left" VerticalAlignment="Top"><Button Content="Border 的子元素1" Width="120" Height="35"/>
</Border>
<!-- 简单的属性触发器 IsMouseOver -->
<Border x:Name="border7" Margin="10" Width="280" Height="100" HorizontalAlignment="Left" VerticalAlignment="Top" SnapsToDevicePixels="True"><Border.Style><Style TargetType="{x:Type Border}"><Setter Property="Background" Value="#555a64"/><Setter Property="BorderBrush" Value="Cyan"/><Setter Property="CornerRadius" Value="5"/><Setter Property="BorderThickness" Value="1"/><Style.Triggers><Trigger Property="IsMouseOver" Value="False"><Setter Property="Background" Value="YellowGreen"/><Setter Property="BorderBrush" Value="Teal"/><Setter Property="CornerRadius" Value="15 15 15 15"/><Setter Property="BorderThickness" Value="2"/></Trigger></Style.Triggers></Style></Border.Style>
</Border>
*************************************************************************************************************
4、效果图
**************************************************************************************************************
5、总结
Border常用于边框绘制,区域背景控制,以及其他控件模板改写中(尤为是圆角属性的设置)。
**************************************************************************************************************
WPF 控件专题 Border控件详解相关推荐
- DevExpress控件GridControl中的布局详解 【转】
DevExpress控件GridControl中的布局详解 [转] 2012-10-24 13:27:28| 分类: devexpress | 标签:devexpress |举报|字号 订阅 h ...
- 利用Animation控件制作帧动画过程详解
利用Animation控件制作帧动画过程详解 前言 通过Animation控件来达到序列图的播放(素材和示例视频在文章末尾) 一.序列图 (此素材为已经分割好的序列图) 如若序列图在一张图片上,请参考 ...
- wpf 客户端【JDAgent桌面助手】详解(二)桌面宠物制作详解
目录区域: 业余开发的wpf 客户端终于完工了..晒晒截图(此文 由于当时没有开通csdn博客所以在博客园发了,后续文章都是csdn 首发奥) [晒视频了]业余开发wpf 客户端[JDAgent桌面助 ...
- 【卷积神经网络结构专题】一文详解AlexNet(附代码实现)
关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! [导读]本文是卷积神经网络结构系列专题第二篇文章,前面我们已经介绍了第一个真正意义 ...
- WPF 控件专题 Image控件详解
1.Image 介绍 Image:表示用于显示图像的控件. Image可以加载以下图像类型:.bmp..gif..ico..jpg..png..wdp 和 .tiff.但是在显示多帧图像时,仅显示第一 ...
- WPF 控件专题 Grid 控件详解
1.Grid 介绍 定义由列和行组成的灵活的网格区域,Grid顾名思义就是"网格",它的子控件被放在一个一个实现定义好的小格子里面,整齐配列,该对象可包含多个 Children对象 ...
- WPF 控件专题 Lable 控件详解
1.Lable 介绍 官方释义:表示包含一段任意类型内容的控件.也可以叫标签控件. Label控件和TextBlock看起来非常像.但在使用时就会发现,Label使用的是Content属性而不是Tex ...
- WPF 控件专题 TreeView控件详解
1.TreeView介绍 命名空间:System.Windows.Controls TreeView 表示一个控件,该控件在树结构(其中的项可以展开和折叠)中显示分层数据. TreeView 是一个 ...
- WPF 控件专题 Menu 控件详解
1.Menu 介绍 Menu 表示一个 Windows 菜单控件,该控件可用于按层次组织与命令和事件处理程序关联的元素. 该 Menu 控件提供一个项列表,用于指定应用程序的命令或选项. 通常,单击菜 ...
最新文章
- Docker常用命令操作——1)、镜像操作;2)、容器操作
- 一次性口令设计代码_品牌上新||预算百元,就能买到百搭又有设计感的首饰...
- Javascript - ExtJs - TreePanel组件
- 获取ArcGIS安装路径
- MongoDB监控及报警
- mac下sublime text的使用
- O-RAN: Towards an Open and Smart RAN
- 嵌套地狱_解决嵌套业务逻辑_使用Js的对象_避免数组嵌套---SpringCloud Alibaba_若依微服务框架改造_ElementUI---工作笔记016
- 如何看待不会写代码的架构师?
- ACE网络编程思考(二)
- Mybatis批量insert报错的解决办法【the right syntax to use near '' at line...】
- 5G商业化进程提速 运营商推进网络智能化转型
- 2020-11-26 采用微软自己的snipaste工具截图
- 【TWVRP】基于matlab遗传算法求解送货且带时间窗的车辆路径规划问题【含Matlab源码 1074期】
- protel9s【硬件课程设计】
- java 反译md5加密_Java MD5加密与反编译
- SpringBoot:AOP切面execution表达式
- 11.3-11.4kmp专题训练
- 公众号附件链接怎么放?
- 华为云数据库mysql云灾备方案_华为云MySQL云灾备解决方案,为企业数据提供全方位的异地保护...