为WPF的Grid添加边框线
1、定义一个类文件
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;namespace SilverlightApplicationGridBorderSample
{/// <summary>/// 为Grid添加的一个特殊功能/// </summary>public class GridHelper{//请注意:可以通过propa这个快捷方式生成下面三段代码public static bool GetShowBorder(DependencyObject obj){return (bool)obj.GetValue(ShowBorderProperty);}public static void SetShowBorder(DependencyObject obj, bool value){obj.SetValue(ShowBorderProperty, value);}public static readonly DependencyProperty ShowBorderProperty =DependencyProperty.RegisterAttached("ShowBorder", typeof(bool), typeof(GridHelper), new PropertyMetadata(OnShowBorderChanged));//这是一个事件处理程序,需要手工编写,必须是静态方法private static void OnShowBorderChanged(DependencyObject d, DNbxnTGymbY6j9EXsAsQAcJdFkMmMoFLAD e){var grid = d as Grid;if((bool)e.OldValue){grid.Loaded -= (s, arg) => { };}if((bool)e.NewValue){grid.Loaded += (s, arg) =>{//这种做法自动将控件移动到Border里面来var controls = grid.Children;var count = controls.Count;for(int i = 0; i < count; i++){var item = controls[i] as FrameworkElement;var border = new Border(){BorderBrush = new SolidColorBrush(Colors.LightGray),BorderThickness = new Thickness(1),Padding = new Thickness(20)};var row = Grid.GetRow(item);var column = Grid.GetColumn(item);var rowspan = Grid.GetRowSpan(item);var columnspan = Grid.GetColumnSpan(item);Grid.SetRow(border, row);Grid.SetColumn(border, column);Grid.SetRowSpan(border, rowspan);Grid.SetColumnSpan(border, columnspan);grid.Children.RemoveAt(i);border.Child = item;grid.Children.Insert(i, border);}};}}}}
2、在XAML文件中增加空间
xmlns:GridLine="clr-namespace:类所在的命名空间"
3、在Grid中引用
将以下属性增加在Grid的属性定义中,像Height等属性的使用一样。
GridLine:GridHelper.ShowBorder="True"
参考链接:https://www.cnblogs.com/chenxizhang/archive/2011/09/22/2185414.html
为WPF的Grid添加边框线相关推荐
- 为WPF和Silverlight的Grid添加边框线(zz)
Grid是WPF和Silverlight中的一个重要的布局元素,其他的布局元素还有StackPanel, Canvas, Border等等.从字面上说,Grid是一个表格的意思,它的使用也确实很方便, ...
- 为WPF和Silverlight的Grid添加边框线
Grid是WPF和Silverlight中的一个重要的布局元素,其他的布局元素还有StackPanel, Canvas, Border等等.从字面上说,Grid是一个表格的意思,它的使用也确实很方便, ...
- wpf grid添加边框
/// <summary>/// 为Grid添加边框/// </summary>public class GridHelper{//边框的宽度static double myB ...
- java里怎么给excel加框线,使用Jacob操作word 添加表格时 如何给表格添加边框线
/** *//** * 创建表格 * * @param pos 位置 * @param cols 列数 * @param rows 行数 */ public void createTable(S ...
- css给盒子添加边框线
上边框线 .border-top::before{content: "";position: absolute;height: 0.02rem;width: 100%;border ...
- WPF Grid添加边框的两种方法
最近项目中使用到了Grid表格,居然要加边框,查了一下,grid原生居然是不支持实线边框的.. 最终我还是实现了效果, 看看吧: 左边是直接写的每行一个border,每列写一个border,这样在行列 ...
- WPF中Grid实现网格,表格样式通用类(转)
/// <summary> /// 给Grid添加边框线 /// </summary> /// <param name="grid"></ ...
- word样式基准_「word技巧」简单的排版技巧—给word文档添加各种样式边框线
一直在说排版,但一篇word文档到底怎么排版才好看?这涉及到很多方面的技巧. 不过,有时候,一个很简单或是不起眼的小动作,有可能就会让整个word文档显得高大上起来. 比如说,给文档随意添加个边框线, ...
- alert中添加表格_Excel设置表格边框的几种方法,还有自动添加边框哟
我们在日常工作中,使用Excel制作表格的,最后都要加上边框,打印时才会达到表格的要求,今天小编教大家快速给表格添加边框的方法,有一种是自动添加哟! 方法一: 利用功能选项卡按钮,这应该是大家经常用的 ...
最新文章
- Objective-c 网络编程1 Web请求和响应
- Linux非阻塞IO(八)使用epoll重新实现非阻塞的回射服务器
- 如何消费WCF Data Services定义的服务操作
- Bootstrap的x-editable行编辑
- OpenCV访问像素点的灰度值
- flex实现水平垂直居中
- 《图解设计模式》读书笔记
- 搜狗打不开html文件,搜狗皮肤怎么安装 安装的时候出现“无法打开此文件”
- 保险中的几个“时间”及生日单
- 为ARM处理器实现Machine Forth
- 【RDMA】基于RoCE的应用程序的MTU注意事项|探测网络中的MTU设置
- 百度地图自定义瓦片切片工具
- 零代码变更,巧用 Reloader 快速实现 Kubernetes 的 Configmap 和 Secret 热更新
- 如何在Unity中使用WebXR开发AR/VR应用
- Linux 常见命令四大类
- 在SEO中必备的知识应该滚瓜烂熟,其余的就是实战落实
- 小刀娱乐网源码2020版
- 病毒种类可分为那几类?芒果xo是否带有病毒?
- WebStorm配置eslint检查自动格式化(自动解决eslint问题\Vue3项目解决ESLint问题)
- mattermost编译