我有一个列表框控件,其中有 item
动态添加和手动删除(由于“删除项目”按钮)。当项目数量发生变化时,我想更新用户界面的其他部分 - 即一个标题为“您必须选择一些文件”。和项目计数标题。
当项目数量发生变化时,如何添加事件处理程序或有效的事件处理程序来触发 - 例如ItemAdded
或 ItemRemoved
或 ItemsChanged
注意:这与用户在列表框中选择项目无关。
非常感谢!
最佳答案
您可以尝试使用 BindingList<>
作为你的DataSource
,然后您对该列表而不是您的 ListBox
采取行动-- 它将自动从 BindingList
获取更新.
BindingList
有一个 ListChanged
事件。
ListChanged
事件有一个 ListChangedEventArgs
包括一个 ListChangedType 枚举器:
BindingList<string> list = new BindingList<string>();
list.ListChanged += new ListChangedEventHandler(list_ListChanged);
void list_ListChanged(object sender, ListChangedEventArgs e) {
switch (e.ListChangedType){
case ListChangedType.ItemAdded:
break;
case ListChangedType.ItemChanged:
break;
case ListChangedType.ItemDeleted:
break;
case ListChangedType.ItemMoved:
break;
// some more minor ones, etc.
}
}
关于c# - 在列表框中添加/删除项目的事件 c#.NET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7860467/