WPF DataGrid简单使用
1.创建 DataGrid
<DataGrid x:Name="dataGrid" HorizontalAlignment="Left" Margin="15,195,0,0" VerticalAlignment="Top" Height="320" Width="400" AutoGenerateColumns="False"></DataGrid>
2.列名设置
在WPF中对DataGrid控件的列名设置是非常简单方便的,跟WPF的所有控件都一样可以对某个元素的独立控制 ,所以对DataGrid的列名设置也不例外,我们到<DataGrid.Columns>进行设置即可。
<DataGrid x:Name="dataGrid" HorizontalAlignment="Left" Margin="15,195,0,0" VerticalAlignment="Top" Height="320" Width="400" AutoGenerateColumns="False"><DataGrid.Columns><DataGridTextColumn Header="姓名" Binding="{Binding Name}" Width="80" /><DataGridTextColumn Header="性别" Binding="{Binding SaturationAmout}" Width="80" /><DataGridTextColumn Header="年龄" Binding="{Binding RealTimeAmout}" Width="80"/><DataGridTextColumn Header="生日" Binding="{Binding SumAmout}" Width="150"/></DataGrid.Columns></DataGrid>
在 中的 Header 就是设置的列名了,如: Header=“实时数据”
3.数据绑定
---------------------------------------------前台代码----------------------------------------------
(1)在资源视图xml文件的DataGrid,并设置绑定。
<DataGrid x:Name="DATA_GRID" ItemsSource="{Binding}" HorizontalAlignment="Left" Margin="15,195,0,0" VerticalAlignment="Top" Height="320" Width="400" AutoGenerateColumns="False" BorderBrush="#FF96B8D8" IsSynchronizedWithCurrentItem="False" SelectionChanged="DATA_GRID_SelectionChanged" ><DataGrid.Columns><DataGridTextColumn Header="姓名" Width="80" Binding="{Binding name}"/><DataGridTextColumn Header="性别" Width="80" Binding="{Binding sex}"/><DataGridTextColumn Header="年龄" Width="80" Binding="{Binding age}"/><DataGridTextColumn Header="生日" Width="150" Binding="{Binding birthday}"/></DataGrid.Columns></DataGrid>
ItemsSource=“{Binding}” 和Binding=“{Binding name}” Binding="{Binding sex}"进行数据绑定,其中name和age是对应的属性名。
(2)如果要让DataGridComboBoxColumn中下拉列表的内容为制定枚举类型的内容,则要指定静态资源。这样,整个xaml文件应进行设置:
Title="我的窗口" Height="577" Width="839" Loaded="LoadData">
其中LoadData是添加数据的方法名。
---------------------------------------------后台代码----------------------------------------------
(3)在项目中创建一个people类,并写get,set方法。
//people类
public class people
{public string name { get; set; }public string sex { get; set; }public string age { get; set; }public string birthday { get; set; }
}
/// <summary>
/// MainWindow.xaml 的交互逻辑
/// </summary>
public partial class MainWindow : Window
{//创建people数组ObservableCollection<people> peopleList = new ObservableCollection<people>();public MainWindow(){InitializeComponent();}
注意:如果不写get,set,数据将不会加载到DataGrid中
(4)实现数据添加
//创建dataGrid数据
private void LoadData(object sender, RoutedEventArgs e)
{peopleList.Add(new people(){name = "小明",age = "18",sex = "男",birthday = "1990-9-9"});peopleList.Add(new people(){name = "小红",age = "18",sex = "女",birthday = "1990-9-9"});//((this.FindName("DATA_GRID")) as DataGrid).ItemsSource = peopleList;DATA_GRID.ItemsSource = peopleList;
}
WPF DataGrid简单使用相关推荐
- WPF DataGrid 通过自定义表头模拟首行固定
WPF DataGrid 通过自定义表头模拟首行固定 独立观察员 2021 年 9 月 25 日 最近工作中要在 WPF 中做个表格,自然首选就是 DataGrid 控件了.问题是,UI 设计的表格是 ...
- WPF DataGrid:解决排序、ScrollIntoView、刷新和焦点问题
目录 介绍 第一种方法:记住选定的行,刷新DataGrid,再次选择行 最终方法:使用OneWay绑定,避免调用Refresh() 改进1:使ScrollIntoView()起作用 改进2:将选定的行 ...
- 使用绑定进行WPF DataGrid格式化的指南
目录 介绍 WPF DataGrid结构 WPF绑定基础 使用的业务数据 将DataGrid与业务数据连接 DataGrid格式 格式化列 格式化完整行 根据显示的值格式化单元格 根据业务逻辑数据格式 ...
- WPF DataGrid 主从表 数据绑定方式
昨天在网上搜了一下午没有看到一个关于WPF DataGrid主从表数据绑定的示例,但是我坚信这个简单的功能肯定是支持的,经研究问题解决. 现把相关方法共享下,给现在还在郁闷的兄弟们一点参考.重点在于定 ...
- C# WPF DataGrid控件的详细介绍和推荐一些样式设计
前面介绍过使用DataGrid简单绑定一个数据模型,接着介绍DataGrid的一些详细操作. 参考:C# WPF DataGrid的使用 定制DataGrid控件基本外观属性 RowBackgroun ...
- WPF MvvmLight简单实例(1) 页面导航
原文:WPF MvvmLight简单实例(1) 页面导航 实现了那些功能,先看看截图: 操作描述: 在程序运行后,点击"Load"按钮,页面会加载PageOne,点击PageOne ...
- WPF自学入门(十一)WPF MVVM模式Command命令 WPF自学入门(十)WPF MVVM简单介绍...
WPF自学入门(十一)WPF MVVM模式Command命令 在WPF自学入门(十)WPF MVVM简单介绍中的示例似乎运行起来没有什么问题,也可以进行更新.但是这并不是我们使用MVVM的正确方式.正 ...
- WPF Datagrid with some read-only rows - Stack Overflow
原文:WPF Datagrid with some read-only rows - Stack Overflow up vote 21 down vote accepted I had the sa ...
- WPF绘制简单常用的Path
原文:WPF绘制简单常用的Path 写代码出身的我们经常需要使用一些简单 但是不是规则图形的Path 但限于美工功底有限 不知道怎么去画 下面我告诉大家一些简单的小技巧 用代码来画Path 个人还是比 ...
最新文章
- c# typescript_在任何IDE中从C#,Java或Python代码获取TypeScript接口的简单方法
- 数据竞赛利器XGBoost常见面试题集锦
- gitlab常用命令
- 贝叶斯估计和最大后验估计
- 今天下棋,结合以前一些技巧的总结
- php input file ajax,jquery ajax put file, php save file
- 使用绝对布局的方法创建一个登录密码验证的简易窗口
- springboot中getOutputStream() has already been called for this response和java.io.FileNotFoundException
- SpringMVC使用CommonsMultipartResolver上传文件
- 农夫山泉下场当“烧水工”,熟水市场是“鸡肋”还是“机遇”?
- 路飞学城Python-Day37(practise)
- 最长山脉 python
- Android开发蓝牙篇之蓝牙设备开启、搜索周边蓝牙设备
- Java打印表格 Console/控制台
- 【JavaEE】网络编程基础之Socket套接字
- 华为测试岗面试经验(附面试流程)
- 关于网线,你了解多少?
- 轻松创建FB和Ins故事广告,提升内容曝光率
- NASA全球生态系统动态调查激光雷达(GEDI)
- 捷达vs7测试_捷达vs7碰撞测试成绩