我在WindowsForms应用程序中更新DataSource
的{{1}}时遇到问题。
我已DataGridView
填写了我自己班DataGridView
的{{1}}中的数据。
List
在MainForm()方法中,我调用以下内容:
Skoleni
为private List<Skoleni> setrideneSkoleni; //list of objects
和 bindingDwgSkoleni = new BindingSource(); //create bindingsource
bindingDwgSkoleni.DataSource = setrideneSkoleni; //set datasource for bindingsource
dgwSkoleni.DataSource = bindingDwgSkoleni; // set datasource for datagridview
设置了DataSource
。
然后我以另外的形式将项目添加到BindingSource
,button_Click方法包含:
DataGridView
变量setrideneSkoleni
已更新(项目已添加),但BindingSource未更新(在调试中检查 - 列表仍包含相同的项目)。
我不能简单地将DataGridView的DataSource设置为null而不是新列表,因为它会破坏格式化(隐藏列变为可见,排序被取消),我必须使用BindingSource来保持配置。
有人可以建议我如何解决这个问题吗?
由于
答案 0 :(得分:0)
将您的List
更改为BindableList
。在INotifyProperty
课程上实施Skoleni
。