![]() |
1
1
第一个问题似乎是您正在创建一个新的列表,并将数据绑定到该列表。添加元素时,这些元素将添加到集合中,但原始员工列表保持不变。 为了避免这种情况,您应该提供一个自定义集合类,将更改迁移回底层员工列表,或者在数据绑定到它之前连接适当的事件(在插入/删除时执行迁移)。 为了避免将可编辑集合绑定到网格中的其他许多问题,您应该实现数据绑定接口,如下所述。这些接口的存在允许可视化控件通知基础集合有关“insert cancelled”(当用户中止新记录的条目时)等操作,并同样允许信息反向流动(当集合或单个条目更改时更新UI)。 首先,您将希望至少对数据绑定集合中的各个项实现IEditableObject、InotifyPropertiesChanged和IDataErrorInfo,在您的情况下,这些项将是EmployeeGridViewADaper类。 此外,您还希望集合实现ITypedList和InotifyCollectionChanged。BCL包含一个bindingList实现,它提供了一个很好的起点。建议使用这个而不是简单的列表。 我可以推荐 Data Binding with Windows Forms 2.0 关于这个主题的详尽报道。 |
![]() |
2
3
你也可以考虑使用 System.Collections.ObjectModel.ObservableCollection 然后接线 CollectionChanged 事件。看起来像这样。
代码采用以下using语句。
如果你需要 IList 您也可以使用的接口 System.ComponentModel.BindingList 把它连接起来 ListChanged 事件。看起来像这样。
代码采用以下using语句。
|
![]() |
J. Defenses · 节点JS,NeDB-如何使同步返回到父模块 6 年前 |
![]() |
StefanoN · Java多线程-按顺序只运行一次线程运行方法 6 年前 |
![]() |
merlin2011 · Android线程方法是否隐式同步? 6 年前 |
![]() |
ninbura · ffmpeg-时间码和分数帧速率(复制帧) 7 年前 |
![]() |
ninbura · 分段时音频缓慢去同步 7 年前 |