WPF 后台重写 DataTemplate
/// <summary>
/// 配置类
/// </summary>
public static class GridControlDeploy
{
/// <summary>
/// 重写 DataTemplate 表头
/// </summary>
/// <param name="Widths">GridControl 实际宽度</param>
/// <param name="StrList">表头名称列表</param>
/// <returns></returns>
public static DataTemplate DynamicAddColumn(double Widths, List<string> StrList)
{
//去掉两头宽度
Widths = Widths - ; var gd = new FrameworkElementFactory(typeof(StackPanel));
gd.SetValue(StackPanel.BackgroundProperty, new SolidColorBrush((Color)ColorConverter.ConvertFromString("#D1E8FF")));
gd.SetValue(StackPanel.OrientationProperty, Orientation.Horizontal);
gd.SetValue(StackPanel.HeightProperty, 30.0); var Bor1 = new FrameworkElementFactory(typeof(Border));
Bor1.SetValue(Border.WidthProperty, 16.0);
Bor1.SetValue(Border.BackgroundProperty, new SolidColorBrush((Color)Colors.White));
Bor1.SetValue(Border.BorderThicknessProperty, new Thickness(, , , ));
Bor1.SetValue(Border.BorderBrushProperty, new SolidColorBrush((Color)ColorConverter.ConvertFromString("#D6D6D6"))); gd.AppendChild(Bor1); foreach (var item in StrList)
{
var Bor3 = new FrameworkElementFactory(typeof(Border));
Bor3.SetValue(Border.BorderThicknessProperty, new Thickness(, , , ));
Bor3.SetValue(Border.BorderBrushProperty, new SolidColorBrush((Color)ColorConverter.ConvertFromString("#D6D6D6")));
Bor3.SetValue(Border.WidthProperty, Widths / StrList.Count());
var textblockFEF = new FrameworkElementFactory(typeof(TextBlock));
textblockFEF.SetValue(TextBlock.TextProperty, item);
textblockFEF.SetValue(TextBlock.ToolTipProperty, item);
textblockFEF.SetValue(TextBlock.HorizontalAlignmentProperty, HorizontalAlignment.Center);
textblockFEF.SetValue(TextBlock.VerticalAlignmentProperty, VerticalAlignment.Center);
textblockFEF.SetValue(TextBlock.TextWrappingProperty, TextWrapping.Wrap);
Bor3.AppendChild(textblockFEF);
gd.AppendChild(Bor3);
} var Bor2 = new FrameworkElementFactory(typeof(Border));
Bor2.SetValue(Border.WidthProperty, 19.0);
Bor2.SetValue(Border.BackgroundProperty, new SolidColorBrush((Color)Colors.White));
Bor2.SetValue(Border.BorderThicknessProperty, new Thickness(, , , ));
Bor2.SetValue(Border.BorderBrushProperty, new SolidColorBrush((Color)ColorConverter.ConvertFromString("#D6D6D6")));
gd.AppendChild(Bor2); var dataTemplate = new DataTemplate
{
VisualTree = gd
}; return dataTemplate;
}
}
重写表头

WPF 后台重写 DataTemplate的更多相关文章
- WPF后台生成datatemplate(TreeViewItem例子)
public void loadCheckListDataTemplate(TreeViewItem tvi) { DataTemplate cdt = new DataTemplate(); Fra ...
- WPF 后台获得 数据模板里的内容控件(DataTemplate)
原文:WPF 后台获得 数据模板里的内容控件(DataTemplate) 假如 <Window.Resources> 里 有一个 Datatemplate 我想获得TextBlo ...
- WPF后台设置xaml控件的样式System.Windows.Style
WPF后台设置xaml控件的样式System.Windows.Style 摘-自 :感谢 作者: IT小兵 http://3w.suchso.com/projecteac-tual/wpf-zhi ...
- WPF后台访问XAML元素
当我们需要从后台访问xaml文件时,我们可以通过这样的方式来操作: private void button1_Click(object sender, RoutedEventArgs e) { Sys ...
- wpf后台设置颜色(背景色,前景色)
有时候你是不是也会遇到要在wpf后台给某个控件设置背景色或者给文字设置前景色的情况? 本人最近看到一个从自定义的combobox读取系统字体和颜色的实例,该实例实现了随字体combobox选项改变而改 ...
- WPF 动态创建 DataTemplate 及数据绑定
WPF 动态创建 DataTemplate 及数据绑定 运行环境:Window7 64bit,.NetFramework4.61,C# 6.0: 编者:乌龙哈里 2017-02-22 参考: star ...
- WPF 获取 ListView DataTemplate 中控件值
原文:WPF 获取 ListView DataTemplate 中控件值 版权声明:本文为博主原创文章,未经博主允许可以随意转载 https://blog.csdn.net/songqingwei19 ...
- WPF后台动画DoubleAnimation讲解
WPF后台动画,使用DoubleAnimation做的. 1.移动动画 需要参数(目标点离最上边的位置,目标点离最左边的位置,元素名称) Image mImage = new Image(); Flo ...
- WPF 后台C#设置控件背景图片
原文:WPF 后台C#设置控件背景图片 以前的程序中有做过,当时只是记得uri很长一大段就没怎么记.今天有人问了也就写下来. 这是一个Button,设置了Background后的效果. 前台的设置 ...
随机推荐
- 【未解决】对于使用Windows的IDEA进行编译的文件,但无法在Linux系统中统计代码行数的疑问
在我学习使用Windows的IDEA的过程中,将代码文件转移到Linux虚拟机当中,但无法在Linux系统中统计代码行数. 注意:拷贝进虚拟机的文件均能编译运行. 具体过程如下: root@yogil ...
- VC++封装的时间类
一.使用方法 首先要在工程中加入TimeNow.cpp和TimeNow.h文件 1.把.cpp与.h文件放在放在工程文件夹. 2.项目(progect)-->属性(properties)--&g ...
- 如何利用一台pc获取百万利益 《标题党》
这是我在quora上看到的一个问题,我看到的被推荐的答案的第一句话就很nb. 有想法很容易做起来很难(不是这句) I’m going to give you something much more v ...
- python学习2:turtle的使用蟒蛇绘制的学习以及自己摸索的等边三角形绘制(跟随mooc学习)
首先先放上蟒蛇的绘制程序 import turtle#引入外部库#def保留字用于 定义函数 def drawSnake(rad,angle,len,neckrad): for i in range( ...
- Java实现数据库与eclipse的连接
JavaBean:用于传递数据,拥有与数据相关的逻辑处理 JSP:从Model接收数据并生成HTML Servlet:接收HTTP请求并控制Model和View jdbc:用于驱动连接 一.[建立数据 ...
- 剑指Offer 6. 旋转数组的最小数字 (数组)
题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转. 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素. 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋 ...
- 强大的拖拽组件:React DnD 的使用
强大的拖拽组件:React DnD 的使用 react.js 10.6k 次阅读 · 读完需要 25 分钟 17 文章首发我的个人blog : 原文链接 学习 React DnD 的最初原因是阅读 ...
- IC卡插入与触点激活时序
当IC卡插入接口设备时,终端应确保其所有触点处于低电平状态: 当IC卡插入接口设备后,触点须按如下方式激活: 要点: 终端必须在整个激活时序中保持RST为低电平状态: 触点物理接触之后,应在IO或CL ...
- 初识vue小结
初识vue 大家都那么热爱他一定有原因,我也特想了解. 我来咯, 首先用vue开发版,用一个标签在head中插入,script标签src属性引入vue文件,就像jquey一样在script,但是放在h ...
- String 与 StringBuffer的差别
原文:http://blog.csdn.net/yirentianran/article/details/2871417 在Java中有3个类来负责字符的操作. 1.Character 是进行单个字符 ...