public DataGrid CreateDataGrid()
{
//自定义DataGrid
DataGrid dataGrid = null;
dataGrid = new DataGrid(); dataGrid.Height = ;
dataGrid.Margin = new Thickness(, , , );
dataGrid.IsReadOnly = true;
dataGrid.AutoGenerateColumns = false;
dataGrid.CanUserResizeColumns = false;
System.Windows.Data.Binding binding = null;
binding = new System.Windows.Data.Binding("E_ID");
binding.Mode = System.Windows.Data.BindingMode.OneWay;
DataGridTextColumn dgtcE_Id = null;
dgtcE_Id = new DataGridTextColumn();
dgtcE_Id.Header = "列头1";
dgtcE_Id.Width = ;
dgtcE_Id.Visibility = Visibility.Collapsed;
dgtcE_Id.Binding = binding;
dataGrid.Columns.Add(dgtcE_Id);
binding = new System.Windows.Data.Binding("E_Type");
binding.Mode = System.Windows.Data.BindingMode.OneWay;
DataGridTextColumn dgtcE_Type = null;
dgtcE_Type = new DataGridTextColumn();
dgtcE_Type.Header = "列头2";
dgtcE_Type.Width = ;
dgtcE_Type.Binding = binding;
dataGrid.Columns.Add(dgtcE_Type);
binding = new System.Windows.Data.Binding("E_TypeName");
binding.Mode = System.Windows.Data.BindingMode.OneWay;
DataGridTextColumn dgtcE_TypeName = null;
dgtcE_TypeName = new DataGridTextColumn();
dgtcE_TypeName.Header = "列头3";
dgtcE_TypeName.Width = ;
dgtcE_TypeName.Binding = binding;
dataGrid.Columns.Add(dgtcE_TypeName);
binding = new System.Windows.Data.Binding("E_State");
binding.Mode = System.Windows.Data.BindingMode.OneWay;
DataGridTextColumn dgtcReveaState = null;
dgtcReveaState = new DataGridTextColumn();
dgtcReveaState.Header = "列头4";
dgtcReveaState.Width = ;
dgtcReveaState.Binding = binding;
dataGrid.Columns.Add(dgtcReveaState); //DataGrid中Column的内容居中
Style styleRight = new Style(typeof(TextBlock));
Setter setRight = new Setter(TextBlock.HorizontalAlignmentProperty, HorizontalAlignment.Center);
styleRight.Setters.Add(setRight);
foreach (DataGridColumn c in dataGrid.Columns)
{
DataGridTextColumn tc = c as DataGridTextColumn;
if (tc != null)
{
tc.ElementStyle = styleRight;
}
} //表头居中
Style style = new Style(typeof(DataGridColumnHeader));
setRight = new Setter(DataGridColumnHeader.HorizontalContentAlignmentProperty, HorizontalAlignment.Center);
style.Setters.Add(setRight);
dataGrid.ColumnHeaderStyle = style; return dataGrid;
}

设置满足某条件行的背景色

private void datagrid_LoadingRow(object sender, DataGridRowEventArgs e)
{
var drv = e.Row.Item as DataRowView;
switch (drv["ID"].ToString())
{
case "": e.Row.Background = new SolidColorBrush(Colors.Green);
break;
case "": e.Row.Background = new SolidColorBrush(Colors.Yellow);
break;
case "": e.Row.Background = new SolidColorBrush(Colors.CadetBlue);
break;
}
}

WPF 后台添加DataGrid的更多相关文章

  1. C# WPF后台动态添加控件(经典)

    概述 在Winform中从后台添加控件相对比较容易,但是在WPF中,我们知道界面是通过XAML编写的,如何把后台写好的控件动态添加到前台呢?本节举例介绍这个问题. 这里要用到UniformGrid布局 ...

  2. WPF后台设置xaml控件的样式System.Windows.Style

    WPF后台设置xaml控件的样式System.Windows.Style 摘-自 :感谢 作者: IT小兵   http://3w.suchso.com/projecteac-tual/wpf-zhi ...

  3. WPF 控件DataGrid绑定

    WPF 手动绑定 DataGrid 例子:前台:<DataGrid AutoGenerateColumns="False" Name="dataGrid1" ...

  4. WPF 自带Datagrid编辑后无法更新数据源的问题

    原文  WPF 自带Datagrid编辑后无法更新数据源的问题 解决办法: 在列的绑定属性里加上UpdateSourceTrigger,示例XAML如下 <DataGrid Grid.Row=& ...

  5. Asp.net 后台添加CSS、JS、Meta标签

    Asp.net 后台添加CSS.JS.Meta标签的写法,我这里写成函数方便以后使用.如果函数放在页面类中, Page参数也可以不要. 首先导入命名空间 using System.Web.UI.Htm ...

  6. Ecshop:后台添加新功能栏目以及管理权限设置

    一.添加菜单项 打开 /admin/includes/inc_menu.php文件(后台框架左边菜单),在最后添加一行如下: $modules['17_other_menu']['sns_list'] ...

  7. DEDE后台添加新变量出现:Request var not allow!的解决办法 相关案例演

    论坛上很多人都反馈说在后台添加新变量的时候会出现 "Request var not allow!" 的BUG错误,本文主要就是介绍如何去解决这个问题!下面看具体操纵:在DEDE根目 ...

  8. WPF 中获取DataGrid 模板列中控件的对像

    WPF 中获取DataGrid 模板列中控件的对像 #region 当前选定行的TextBox获得焦点 /// <summary> /// 当前选定行的TextBox获得焦点 /// &l ...

  9. jquery.validate.js使用说明——后台添加用户邮箱功能:非空、不能重复、格式正确

    重点内容为:  jQuery验证控件jquery.validate.js使用说明+中文API[http://www.tuicool.com/articles/iABvI3] 简单教程可以参考[jQue ...

随机推荐

  1. 何时使用MQ ?

    何时使用MQmq作为一种基础中间件在互联网项目中有着大量的使用. 一种技术的产生自然是为了解决某种需求,通常来说是以下场景: 需要跨进程通信:B系统需要A系统的输出作为输入参数.当A系统的输出能力远远 ...

  2. Oracle数据库空值操作

    空值操作: null表示空的意思. 一.情况: 1:表中的任何字段默认情况下都可以为null值. 2:not null表示非空,是一种约束 设置为非空约束的字段,必须有有效值,不能为空. 3:插入数据 ...

  3. Luogu P4062 [CTSC2018]混合果汁 (主席树)

    二分$d$, 转为判断判断是否能取到$Lj$升, 再可持久化一下就好了 #include <iostream> #include <algorithm> #include &l ...

  4. UVA-1149 Bin Packing (贪心)

    题目大意:给定n个物品的重量,无限个容量为m的箱子,每个箱子最多装两个物品,要把所有的物品都装下,最少需要多少个箱子. 题目分析:贪心策略:每次将最重和最轻的两个物品放到一个箱子里,如果装不下,则将最 ...

  5. C# 对json对象嵌套数组

    看图: 这里可以看到是二层嵌套!!使用C#如何实现?? 思路:使用list集合实现 → 建立类 → list集合 → 微软的   Newtonsoft.Json  (一款.NET中开源的Json序列化 ...

  6. C++设计模式之享元模式

    概述 想想我们编辑文档用的wps,文档里文字很多都是重复的,我们不可能为每一个出现的汉字都创建独立的空间,这样代价太大,最好的办法就是共享其中相同的部分,使得需要创建的对象降到最小,这个就是享元模式的 ...

  7. Python数据类型-02.字符串

    本文主要记录字符串的相关知识,包括字符串的定义特点,常用方法和 请知悉: 计算机中,一切皆为对象世界万物,皆为对象,一切对象皆可分类 1.什么是字符串? 类似"hello world&quo ...

  8. 20155313 2016-2017-2 《Java程序设计》第八周学习总结

    20155313 2016-2017-2 <Java程序设计>第八周学习总结 教材内容学习 十四章 NIO与NIO2 1.认识NIO NIO使用频道(Channel)来衔接数据节点,在处理 ...

  9. 华为荣耀7i手动更改DNS,提高网页加载速度

    为什么在同样的Wi-Fi网络下,别人的手机可以秒开网页,但自己的手机却总会慢个半拍或是经常打不开,简直龟速.有时还会加载网页失败.我想大部分人都遇到过吧. 今天本人给大家介绍一种方法,可以加快打开网页 ...

  10. 软工2017第三周作业之找bug——测试报告

    作业要求来自:https://edu.cnblogs.com/campus/nenu/SWE2017FALL/homework/957 环境:windows7  cmd命令行 要求1 bug计分.阅读 ...