WPF 4 DataGrid 控件(进阶篇一)】的更多相关文章

原文:WPF 4 DataGrid 控件(进阶篇一)      上一篇<WPF 4 DataGrid 控件(自定义样式篇)>中,我们掌握了DataGrid 列表头.行表头.行.单元格相关的自定义样式方法,本篇我们继续对自定义样式进行一些高级设置. DataGridTemplateColumn 类      除了下表所示的列类型外,我们还可以通过DataGridTemplateColumn 自定义列样式,为DataGrid 添加更完美的数据显示方式.      首先我们在类中添加ExamDate…
原文:WPF 4 DataGrid 控件(进阶篇二)      上一篇<WPF 4 DataGrid 控件(进阶篇一)>中我们通过DataGridTemplateColumn 类自定义编辑了日期列的样式,当然也可以根据个人需要设置任何样式模板.上例中Pass Exam 列显示学生是否通过考试,但我们并不知道该学生每门学科的成绩是多少.本篇将为DataGrid 行增加这些详细信息,使得DataGrid 数据更加充实. 首先,我们仍然先更新一下Member 类,增加Math 和History 两门…
原文:WPF 4 DataGrid 控件(基本功能篇)      提到DataGrid 不管是网页还是应用程序开发都会频繁使用.通过它我们可以灵活的在行与列间显示各种数据.本篇将详细介绍WPF 4 中DataGrid 的相关功能. 自定义列      默认情况下,当我们为DataGrid 控件设置ItemSource 属性后,DataGrid 会根据数据类型自动生成相应的列,下表列出DataGrid 支持的四种列及其数据类型.      在创建DataGrid 时可以通过AutoGenerate…
原文:WPF 4 DataGrid 控件(自定义样式篇)      在<WPF 4 DataGrid 控件(基本功能篇)>中我们已经学习了DataGrid 的基本功能及使用方法.本篇将继续介绍自定义DataGrid 样式的相关内容,其中将涉及到ColumnHeader.RowHeader.Row.Cell 的各种样式设置. ColumnHeaderStyle 属性      一般来讲列表头是用户首先注意的内容,那么如何在DataGrid 中设计一个美观的表头呢.我们既可以在<DataGr…
WPF的DataGrid控件不能像winform的DataGridView控件一样,支持值的粘贴.WPF的DataGrid控件本质上是跟数据绑定联系在一起,所以需要进行复制粘贴的操作,可以在wpf里用DataGridView控件.如果想进行DataGrid的复制粘贴,只需要在进行复制粘贴的时候,将剪切板上的数据替换成绑定的数据,同样,插入删除等操作,都是改变绑定数据.如下,是一个粘贴的方法,将剪切板的数据转化为绑定数据. #region ctrl+c粘贴 private void DataGir…
内容转自https://www.cnblogs.com/xiaogangqq123/archive/2012/05/07/2487166.html 一.DataGrid基本样式(一) 小刚已经把DataGrid的样式写的很完整了,这里我做点补充,先贴上基本样式的代码: <!--DataGrid样式--> <Style TargetType="DataGrid"> <!--网格线颜色--> <Setter Property="CanUs…
场景:视频上传功能,上传列表使用DataGrid控件,视频有不同的状态对应不同的操作,DataGrid中最后一列为操作列,里面是Button控件.希望点击Button后执行对应的操作,但是设置Button的 Command="{Binding VideoOperationCommand}"后触发不了操作. XAML代码如下: <DataGrid ItemsSource="{Binding VideoList}"> <DataGrid.Columns…
DataGrid控件是一个列表控件, 可以进行过滤,排序等.本文主要针对DataGrid的过滤功能进行分析, 并提供优化方案. 1)DataGrid的过滤过程:      用户输入过滤条件      调用DataGrid的CollectionViewSource的View.Refresh()功能      DataGrid控件内部调用CollectionView的RefreshOverride方法      CollectionView会调用CollectionViewSource的Filter…
最近在做一个组态软件的项目,有一个需求需要在建立IO设备变量的时候选择变量的类型等. 建立IO变量的界面是一个DataGrid实现的,可以一行一行的新建变量,如下如所示: 这里需要使用带有ComboBox控件的列,如何实现呢? 我首先想到的是使用DataGridComboBoxColumn来实现,可是在绑定数据的时候出现了问题,数据怎么也绑定不上.后来经过多方查证,发现原来DataGridComboBoxColumn对数据源有限制,只能是一下3中情况之一: 1.静态资源. 2.x:静态代码实体.…
问题: 添加控件后, 编辑单元格会出现异常 绑定 ItemsSource 属性后, 更新绑定对象的数据, UI 不刷新 如何显示控件中 ComboBox 类型 解决方法: 绑定 ItemsSource 属性即可 每次更新绑定对象后, 先 ItemsSource = null, 再重新绑定 ItemsSource 使用静态类型设置 ComboBox 的 ItemsSource, 如下所示: <Window ... xmlns:core="clr-namespace:System;assemb…
/// <summary> /// 导入Excel文件按钮 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void InputExcelFile_Click(object sender, RoutedEventArgs e) { //将数据绑定到datagird控件中 D…
本次要实现的效果为: 这个DataGrid需要绑定一个集合对象,所以要先定义一个Experience类,包含三个字段 /// <summary> /// 定义工作经历类 /// </summary> public class Experience { /// <summary> /// 获取或设置工作的起始时间 /// </summary> public string Start { get; set; } /// <summary> /// 获…
获取 DataGrid 选中的单元格的信息DataGridCellInfo cell_Info = this.studentTable.SelectedCells[0]; studentTableItem student_Info = cell_Info.Item as studentTableItem; studentTableItem  为一个自定义类 单元格中的数据绑定的是这个自定义类…
一种方法是 使用 datagrid的LoadingRow事件: private void DataGrid_LoadingRow(object sender, DataGridRowEventArgs e) { Employee model = e.Row.Item as Employee; if (model!=null) { ) { e.Row.Foreground = new SolidColorBrush(Colors.Blue); } } } 这种方法的缺点是只有在加载数据或新增数据时…
 /// <summary>         /// 获取DataGrid的所有行是否存在验证错误.         /// </summary>         /// <param name="dg">要检查的DataGrid实例</param>         /// <returns>true 有错,false 无错</returns>         public static bool GetDataG…
此项目源码下载地址:https://github.com/lizhiqiang0204/PrismDataGird01 运行效果如下 前端代码如下 <Window x:Class="ViewModelLocator.Views.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.c…
"想要说些什么 又不知从何说起",每当想要写一些关于wpf的文章,总是沉思良久,怕自己写不好.今天我想要说的是wpf中datagrid控件.我们先来看看它在整个类的层次结构:                                                                图1  wpf                                                                                      …
WPF DataGrid 控件的运用 运行环境:Window7 64bit,.NetFramework4.61,C# 6.0: 编者:乌龙哈里 2017-02-23 参考: King Cobra 博客 流泉飞石 博客 董辉 百度知道答题 章节: 添加列和数据源 选择单位设置 自动添加行号 Enter 键做成 Tab 键的效果 同步更新数据源 在选中 Cell 所在行上插入新行或删除选中 Cell 的所在行 获取选中单元格的值 正文: 一.添加列和数据源: 我们往一个 DataGrid 中添加数据…
利用DataGrid控件实现联动的功能,在数据库客户软件中是随处可见的,然而网上的资料却是少之又少,令人崩溃. 本篇博文将介绍利用DataGrid控件模板定义的三个ComboBox实现“省.市.区”的三级联动.步骤如下: 一.定义地域信息类(注意包含System.ComponentModel命名空间) class RegionInfo : INotifyPropertyChanged //地区信息 { private string _province;//省 private string _ci…
转载:http://blog.csdn.net/jhqin/article/details/7645357 /* ---------------------------------------------------------- 文件名称:DataGridPlus.cs 作者:秦建辉 MSN:splashcn@msn.com QQ:36748897 博客:http://blog.csdn.net/jhqin 开发环境: Visual Studio V2010 .NET Framework 4 …
这是我们的datagrid分页效果图,有上一页,下一页,可以跳到任何一页.当页码比较多的时候,只显示几页,其余用点点,界面实现如下: <!--分页--> <StackPanel Orientation=" Margin="0 20" x:Name="fulltextPager"> <Button x:Name="prePage" Click="prePage_Click" Style=&…
原文:WPF 精修篇 WPF嵌入Winfrom控件 先增加DLL 支持 使用  WindowsFormsHost 来加载Forms的控件 引用命名空间 xmlns:forms="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms" <WindowsFormsHost Grid.Column="1"> <forms:PropertyGrid x:Name="Pro…
最近做个项目,需要导出DataGrid显示的数据,中间遇到了不少的坑,在此纪录一下,方便以后查看,也希望能给用到的人,一点帮助. 导出DataGrid显示的数据,并不是导出DataGrid的ItemsSource,这两者是有区别的,这里纪录的是导出DataGrid的显示数据,也就是所见即所得的东西. 举个例子: 我这里有个一个People的实体类,它包含了6个字段,如下 public class People { public string Name { get; set; } public i…
写在前面:在(一)中,介绍了TreeView控件MVVM模式下数据绑定的方法.在这篇文章中,将总结给节点添加事件的方法,这样说有些不对,总之实现的效果就是点击某个节点,将出现对应于该节点的页面或者数据.(我这里用的方法肯定不是最好的,但是是我能想到的最佳方法了,WPF初学者,希望大家多多指教.) Example#1: 实现下图功能,点击左侧treeview姓名节点,在右侧会出现响应的detailed information. 可以将ID的textbox中的text属性绑定到treeview中Se…
这篇博客将分享如何在WPF程序中使用Ribbon控件.Ribbon可以很大的提高软件的便捷性. 上面截图使Outlook 2010的界面,在Home标签页中,将所属的Menu都平铺的布局,非常容易的可以找到想要的Menu.在Outlook 2003时代,将Home下面的Menu都垂直的排列下来,操作的便捷程度降低了很多.Ribbon的布局会随着窗体的变化动态的调整. 上面的图片中标注了Ribbon的4个区块. 下面我们就在WPF中使用Ribbon控件来实现一个简单的界面. 1. 添加System…
接上一篇博客初步探讨WPF的ListView控件(涉及模板.查找子控件)  我们继续探讨ListView的用法      一.实现排序功能 需求是这样的:假如我们把学生的分数放入ListView,当我们单机ListView头部时候实现对按分数的排序,更改Xaml如下: <Window x:Class="ContentDataTemplate.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/p…
在wpf中查找控件要用到VisualTreeHelper类,但这个类并没有按照名字查找控件的方法,于是搜索网络,整理出下面这个类,感觉用起来很是方便. 贴出来,供大家参考. /// <summary> /// WPF/Silverlight 查找控件扩展方法 /// </summary> public static class VisualHelperTreeExtension { /// <summary> /// 根据控件名称,查找父控件 /// elementNa…
深入理解MVC   MVC无人不知,可很多程序员对MVC的概念的理解似乎有误,换言之他们一直在错用MVC,尽管即使如此软件也能被写出来,然而软件内部代码的组织方式却是不科学的,这会影响到软件的可维护性.可移植性,代码的可重用性. MVC即Model.View.Controller即模型.视图.控制器.我在和同行讨论技术,阅读别人的代码时发现,很多程序员倾向于将软件的业务逻辑放在Controller里,将数据库访问操作的代码放在Model里. 最终软件(网站)的代码结构是,View层是界面,Con…
原文:WPF的Timer控件的使用 通过System.Threaing.Timer控件来实现“初始加载页面时为DataGrid的模版列赋初始值” System.Threaing.Timer的用法: 步骤1: //声明定时器 System.Threading.Timer timer; delegate void UpdateTimer(); 步骤2: //通过委托来调用定时器方法,否则会报“不允许跨线程访问” void MyDelegate(object state) { this.Dispatc…
原文:潜移默化学会WPF(难点控件treeview)--改造TreeView(CheckBox多选择版本),递归绑定数据 目前自己对treeview的感慨很多 今天先讲 面对这种 表结构的数据 的其中一种绑定方法,后面多几列其他属性都没关系,例如多个字段, 1  A  0 2  B  0 3  C  0 4  D  1 5  E  2 6  F  4 7  G 1 ... 就是递归型的表结构 然后通过treeview 展示( treeview 的name 叫 tv , collection 是 …