我一直在寻找类似的东西,但我找不到它。我希望我的程序在ListBox
发生任何变化时执行某些操作(例如,更改所选项目,添加新项目,删除一项等等)
答案 0 :(得分:6)
您可以使用SelectedIndexChanged或SelectedValueChanged个活动。
对于添加或删除项目,没有.NET事件,因此您必须自己实现该功能。 This SO post解释了如何实现这一目标。
祝你好运! PS:我以为你在使用Windows Forms
答案 1 :(得分:1)
如果您将ListBox绑定到BindingList,则可以使用BindingLists的ListChanged事件。 ListChangedEventArgs有一个参数ListChangedType,它告诉您是否添加,删除,移动或更改了一个项目。
你可以用类似的集合做类似的事情。
如果您自己添加或删除项目,显然可以直接告诉其他一些代码要执行,或者您可以自己创建和引发一个事件,前提是您有一个ListAdded事件:
ListAdded(this, new ListAddedEventArgs() { List = myList, Item = myItem });