我正在使用带有自动生成列的WPF数据网格。我正在为一个列分配数据表但没有行作为Items-source。
public DataTable GetInitData()
{
empDS = new DataSet();
empTbl = new DataTable();
empDS.Tables.Add(empTbl);
dc = new DataColumn("Test");
empDS.Tables[0].Columns.Add(dc);
empDS.AcceptChanges();
return empDS.Tables[0];
}
我在构造函数中调用上面的方法。
public MainWindow()
{
this.InitializeComponent();
this.grdEmp.ItemsSource = this.GetInitData().DefaultView;
}
屏幕截图:
现在,当我按F5并运行代码时...数据网格不显示任何列。请指导我,为什么它没有显示任何专栏。如果您需要任何其他信息,请告诉我。
此致 Priyank
答案 0 :(得分:1)
如果向表中添加一行,您将看到生成的列。因此,我只能建议这是WPF DataGrid
中的限制(错误?)。根据您要实现的目标,您可能希望首先在数据中添加一个空行。
public DataTable GetInitData()
{
var empDS = new DataSet();
var empTbl = new DataTable();
empDS.Tables.Add(empTbl);
var dc = new DataColumn("Test");
empDS.Tables[0].Columns.Add(dc);
var row = empDS.Tables[0].NewRow();
//row[0] = "foo";
empDS.Tables[0].Rows.Add(row);
empDS.AcceptChanges();
return empDS.Tables[0];
}