带有列标题但没有行的Datagrid

时间:2012-02-06 10:17:29

标签: c# wpf datagrid

我正在使用带有自动生成列的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;
    }

屏幕截图:

Screen shot of window

现在,当我按F5并运行代码时...数据网格不显示任何列。请指导我,为什么它没有显示任何专栏。如果您需要任何其他信息,请告诉我。

此致 Priyank

1 个答案:

答案 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];
}