我正在动态创建datatable和datagridview,只是希望网格从该表生成列。
// create simple datatable
DataTable dt = new DataTable();
dt.Columns.Add("Id", typeof(int));
dt.Columns.Add("Name", typeof(string));
DataGridView dgv = new DataGridView() { AutoGenerateColumns = true };
// None of the below force datagridview to generate columns
dgv.DataSource = dt;
Debug.WriteLine($"Grid columns count: {dgv.Columns.Count}");
dgv.DataSource = new BindingSource(dt, null);
Debug.WriteLine($"Grid columns count: {dgv.Columns.Count}");
设置数据源后,数据网格视图中的列数仍为零。
我在做什么错了?
答案 0 :(得分:0)
您可以创建一个DataTable并为其提供一些列,然后将此数据表添加为datagridview列
DataTable dt = new DataTable();
一旦声明它会构建如下函数:
void createDataTable()
{
dt.Columns.Add("column1");
dt.Columns.Add("column2");
yourdatagridview.DataSource = dt;
}
最后一次调用表单构造函数中的函数:
createDataTable();