C# DataGrid 用法---极速入门测试
2023-02-18 16:42:26 时间
目标:
新手编程,只求DataGrid能运行起来,更多功能留在后面探讨。
步骤:
1、新建WPF文档 插入DataGrid控件。
<Window x:Class="OASevl.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:OASevl" mc:Ignorable="d" Title="MainWindow" Height="350" Width="525"> <Grid> <DataGrid x:Name="dataGrid" /> </Grid> </Window>
2、新建自定义类,用来显示数据。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace OASevl { class WsEvlData { public string name { get; set; } public double x { get; set; } public double y { get; set; } public double z { get; set; } } }
类定义中最重要的是增加 get; set; 方法,有了这两个方法,DataGrid 才能显示出来。
3、添加代码进行测试。
namespace OASevl { /// <summary> /// MainWindow.xaml 的交互逻辑 /// </summary> public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); List<WsEvlData> data = new List<WsEvlData>(); //ArrayList data = new ArrayList(); Random rd = new Random(); for (int i = 0; i < 100; i++) { WsEvlData wd = new WsEvlData(); wd.name = (i + 1).ToString(); wd.x = rd.Next(1, 1000); wd.y = rd.Next(1, 1000); wd.z = rd.Next(1, 1000); //Console.WriteLine("{0}",wd.x); data.Add(wd); } dataGrid.ItemsSource = data; } } }
测试中使用了 <随机数>函数,List集合、ArrayList集合 效果相同。
《WPF编程宝典 2012版》中,DataGrid 通过 DataSource 来指定数据源,在这里C# 2015社区版,使用 ItemsSource 来指定数据源。
最终效果:
字符串name、数值x y z 均能正确显示,点击标题栏可以自动排序,滚动条会自动出现,全选后 ctrl+C 可以将数据复制出来。对于一般的数据显示是够用了。
相关文章
- HTML5项目笔记10:使用HTML5 IndexDB设计离线数据库
- HTML5项目笔记9:HTML5 Canvas 的图表报表开发
- HTML5项目笔记8:使用HTML5 的跨域通信机制进行数据同步
- HTML5项目笔记7:使用HTML5 WebStorage API构建与.NET对应的会话机制
- HTML5项目笔记6:使用HTML5 FileSystem API设计离线文件存储
- HTML5项目笔记5:使用HTML5 WebDataBase设计离线数据库
- HTML5项目笔记4:使用Audio API设计绚丽的HTML5音乐播放器
- HTML5项目笔记2:离线系统表单设计
- HTML5项目笔记1:项目准备和工具使用
- Web前端设计模式--购物车拖拽的实现...
- LinQ构建分层架构
- Web前端设计模式--构建Ajax智能搜索...
- Web前端设计模式--制作漂亮的弹出层...
- Web 前端设计模式--Dom重构...
- Web前端设计模式--jQuery验证插件...
- PBN主区代表95%时间概率的范围,这个理解对么?
- 第九节 RNP APCH保护区的绘制
- 第八节 起始进近基线转弯保护区的绘制
- 第七节 VOR/DME进近程序保护区的绘制
- 第六节 FAF与GP不工作保护区的绘制