Mr.*_*Boy 4 c# datagridview winforms
我以编程方式将 aDataGridView的数据集绑定到List<MyType>. 我在设计器中设置了列名和类型:
当我第一次绑定列表时,在填充它之后,事情看起来很棒:
但是,当我将数据集重新绑定到列表(以使其在重新填充列表后更新)时,列名和类型似乎是从属性名称(注意空格消失)和类型自动生成的:
填充时我的代码List如下所示:
GridView.DataSource = null;
ListOfItems.Clear();
Populate(ListOfItems);
GridView.DataSource = ListOfItems
Run Code Online (Sandbox Code Playgroud)
我对这种重置绑定的hacky方式不太满意,但它似乎不起作用,修改列表内容不会刷新视图。
这是 GridView 上的设置问题,还是我需要修改我的代码?
您应该创建并添加自己列,设置AutoGenerateColumns以false防止产生不必要的列。
this.dataGridView1.AutoGenerateColumns = false;
Run Code Online (Sandbox Code Playgroud)
如果您使用 windows 窗体设计器来执行数据绑定和创建列,您将受益于标准生成的代码。但是,如果您想自己生成该代码,则应该注意代码的多个方面。
例如,当您使用绑定源时,将网格的数据源设置为该绑定源,设计器将查看绑定源公开的列,并在设计时将这些列添加到您的网格中,并将该行代码添加到禁用自动生成列。
| 归档时间: |
|
| 查看次数: |
1700 次 |
| 最近记录: |