在c#中使用动态列名在数据表中添加列

本文关键字:添加 数据表 动态 | 更新日期: 2023-09-27 17:52:51

DataTable dt = new DataTable();
var dr = dt1.Date; 
String rr = Convert.ToString(dr); 
DataColumn dc1=new DataColumn(); 
dc1.ColumnName = rr; dt.Columns.Add(dc1);

如果我在后面添加datarow,比如

dt.Rows.Add("hello","hello1","hello2");  
dataGrid1.ItemsSource = dt.DefaultView;

数据不显示在网格中。如果我注释

dc1.ColumnName = rr;

值显示正常但是我想让列名是日期这里是"dt1"

请注意,dt1是动态的日期值,它将在每个循环中增加。像

dt1 = dt1.AddDays(1);

请帮

在c#中使用动态列名在数据表中添加列

如果没有看到数据网格的Xaml,则很难确定,但我认为您已经为Xaml中的日期列指定了字段名称。

要解决这个问题,您需要设置AutoGenerateColumns=True并让网格自动查找字段名。