WPF--DataGrid控件使用
一、DataGrid简单使用
DataGrid的使用其实跟TreeView类似,只不过后台组织的对象结构不同,DataGrid一般不需要递归结构,它绑定的数据源,一个属性就代表一个一列,理解不了没事,我直接上代码。
在这里插入图片描述
</TabItem><TabItem Header="Message" /><TabItem Header=" " /><TabItem Header=" "/><TabItem Header=" " /><TabItem Header=" " /><TabItem Header=" " /></TabControl></Grid>private string name;/// <summary>/// 名字/// </summary>public string Name{get => name;set{name = value;OnPropertyChanged();}}private int number;/// <summary>/// 数量/// </summary>public int Number{get => number;set{number = value;OnPropertyChanged();}}private double price;/// <summary>/// 价格/// </summary>public double Price{get => price;set{price = value;OnPropertyChanged();}}
三个属性,对应三列,老规矩,写界面和ViewModel(代码很简单,自己写咯)
public ObservableCollection<DataGridModel> DataGridModels { get; set; } = new ObservableCollection<DataGridModel>();public DataGridViewModel(){Create();}private void Create(){DataGridModels.Add(new DataGridModel(){Name = "苹果",Number = 5,Price = 1.5});DataGridModels.Add(new DataGridModel(){Name = "香蕉",Number = 2,Price = 15});DataGridModels.Add(new DataGridModel(){Name = "菠萝",Number = 3,Price = 10});}
写好直接运行,看看效果
一个对象,对应一行,一个属性,对应一列,跟TreeView每一级对应一个对象类似的,默认的样式有点。。。所以,接下来咱们美化它。
先美化列名成中文 ——>名称、数量、价格(DataGrid下有个Columns是包含所有的列,改列的样式一般也在这里面)
<DataGrid.Columns><DataGridTextColumn Binding="{Binding Name}" Header="名称" /><DataGridTextColumn Binding="{Binding Number}" Header="数量" /><DataGridTextColumn Binding="{Binding Price}" Header="价格" /></DataGrid.Columns>
运行,
嘶,怎么显示两次了。。。 (小问题)看官网发现DataGrids默认自动创建列的,这也就是我们一开始只绑定数据源就显示列的原因,AutoGenerateColumns=“False”,把这属性设置为False就行了。
接着创建其他的列类型(checkbox、combobox、hyperlink)
(如果这是一直对最后一行进行双击后,再切换到其他行,会增加一行),直接设置CanUserAddRows=“False”,让它不能创建行。
OK,接下来设置隔行变色:AlternatingRowBackground=“LightBlue”(设置目标行的颜色),AlternationCount=“2”(设置变色行间隔,最小值为2)
最后是对行和单元格的样式设置
<DataGrid.RowStyle><Style TargetType="DataGridRow"><Setter Property="Background" Value="SkyBlue" /></Style>
</DataGrid.RowStyle>
<DataGrid.CellStyle><Style TargetType="DataGridCell"><Style.Triggers><Trigger Property="IsSelected" Value="True"><Setter Property="Foreground" Value="Red" /></Trigger></Style.Triggers></Style>
</DataGrid.CellStyle>
运行结果如图所示
WPF--DataGrid控件使用相关推荐
- WPF DataGrid控件的使用
WPF DataGrid控件的使用 下面以一个例子说明DataGrid控件的使用方法: 一.程序框架 使用了MVVM Light框架 二.主要代码部分(使用MVVM Light框架): 1.主窗体xa ...
- WPF DataGrid控件样式
WPF DataGrid控件样式 <DataGrid ItemsSource="{Binding ProductsList}" AutoGenerateColumns=&qu ...
- C# WPF DataGrid控件的详细介绍和推荐一些样式设计
前面介绍过使用DataGrid简单绑定一个数据模型,接着介绍DataGrid的一些详细操作. 参考:C# WPF DataGrid的使用 定制DataGrid控件基本外观属性 RowBackgroun ...
- WPF Datagrid控件
ObservableCollection<Model> Name= new ObservableCollection<Model>();首先以此方式实例化一个集合 ((this ...
- WPF 4 DataGrid 控件(基本功能篇)
提到DataGrid 不管是网页还是应用程序开发都会频繁使用.通过它我们可以灵活的在行与列间显示各种数据.本篇将详细介绍WPF 4 中DataGrid 的相关功能. 自定义列 默认情况下,当我们为Da ...
- 详解WPF 4 DataGrid控件的基本功能
分享一下我老师大神的人工智能教程.零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow 详解WPF 4 D ...
- WPF(5)WPF之DataGrid控件
系列文章目录 WPF(1)WPF工程创建 WPF(2)WPF之Image组件 WPF(3)WPF之Button组件 文章目录 系列文章目录 前言 一.DataGrid入门? 1.1 CanUserAd ...
- WPF之DataGrid控件使用
WPF之DataGrid控件使用 一.DataGrid简介 二.DataGrid数据源绑定 三.DataGrid单元格编辑触发事件 四.DataGrid增加删除行 五.DataGrid数据触发器 参考 ...
- WPF 自定义DataGrid控件样式
WPF 自定义DataGrid控件样式 样式一: 样式代码: <!--DataGrid样式--><Style TargetType="DataGrid">& ...
- 有关WPF中DataGrid控件的基础应用总结
基础说明 DataGrid是WPF提供的基础控件,它可以非常轻松的呈现出一张表格,本文章会按照从易到难的顺序依次将DataGrid的使用方法进行解说,除了MSDN上给出的最基本的例子之外,给出了三个比 ...
最新文章
- 机器学习隐私研究新进展:数据增强风险被低估,新算法“降服”维数依赖
- 世界地球日主题班会PPT教学课件模板
- centos7 源码安装goaccess
- c iostream.源码_通达信指标公式源码精准买卖主图指标公式免费分享
- 学生成绩管理系统实验报告_学习60天python成果,Python变成学生成绩管理系统
- endnote导致word 2007很慢
- 51汇编与c语言混合编程,C51与汇编混合编程详解
- 超级人工智能何时能实现?
- 全国各省市区城市编码SQL
- 时钟屏保fliqlo
- MSP430学习笔记(一)--从点灯说起
- 天龙八部手游服务器维护公告,天龙八部手游 近期更新维护公告
- CCS中调试DM6467高清视频采集(TVP7002输入)
- win10远程桌面连接服务器接示内部错误
- 李沐-斯坦福《实用机器学习》-01章
- 【Scala-spark.mlib】分布式矩阵——分布式计算的基石与利器
- 基于JavaWeb实现的城市公交查询系统
- python飞机大战碰撞检测_pygame制作飞机大战4——敌机出现、碰撞检测、增加声音、分数记录...
- 定义复数java_java定义复数的方法
- ICO和IPO的区别