如何将数据网格绑定到数据表都在后面的代码中

本文关键字:数据表 在后面 代码 绑定 数据 数据网 网格 | 更新日期: 2023-09-27 17:53:18

如何在c#代码后面绑定DataGrid到DataTable ?(所有控件都是在运行时生成的,所以请不要使用XAML)

我尝试绑定(),设置DataContext,设置ItemsSource,但都不起作用:

/* Binding() fails */
Binding bind = new Binding();
bind.Source = dataset;
bind.Path = new PropertyPath("dataset.Tables");
datagrid.SetBinding(DataSet, bind);
/* DataContext fails */
datagrid.DataContext = dataset.Tables;
/* ItemsSource fails */
datagrid.ItemsSource = dataset.Tables;

我所需要做的就是绑定一个DataGrid到一个DataTable,所以当有新的行添加到DataTable时,它会自动显示在DataGrid上。

我搜索所有通过stackoverflow和谷歌,但奇怪的是,我找不到一个解决方案。

如何将数据网格绑定到数据表都在后面的代码中

尝试绑定到数据集中的一个表:

datagrid.ItemsSource = dataset.Tables[0].DefaultView;

另外,为了在数据和表单上的表示之间保持良好的抽象层,我建议您将DataGridView的autogeneratecolumcolumns属性设置为false,并添加您想要手工显示的列,使用您选择的标题名称(在这种情况下,不要忘记设置列的DataPropertyName属性)。