1

我想在运行时将 DataTable 绑定到 Windows 窗体中。我在运行时创建了表单并试图将数据表绑定到表单的网格视图中。但它没有在表单中显示数据。我使用了以下代码:

frmSearch frm = new frmSearch();
for (int i = 0; i < erpData.ERPDataTable.Columns.Count; i++)
{
    frm.Controls["grdSearch"].DataBindings
        .Add("DataSource", erpData.ERPDataTable,
                         erpData.ERPDataTable.Columns[i].ToString());
}

frm.Show();

可能是什么问题呢?谁能提供替代解决方案?

4

1 回答 1

3

您可以通过三个步骤将 DataGridView 绑定到某个数据源:

// Create a binding source
var bs = new BindingSource();

// set the bindingsource's datasource, in this case your table
bs.DataSource = erpData.ERPDataTable;

// set the datagridview's datasource, DataSource isn't a property on Control,
// so cast the one you get from your form's Controls collection as a DataGridView
var dgv = (DataGridView)frm.Controls["grdSearch"];
dgv.DataSource = bs;

关于绑定 DataGridView 的 MSDN 参考

于 2012-09-14T20:41:07.363 回答