wpf - 如何在WPF中的ListBox中编写 "Selection Changing"事件?

标签 wpf listbox selectionchanging

我有一个列表框,如果用户尚未完成某些任务,我想阻止更改列表框的选择,这是我目前可以提供的最好解释,在 WinForms 中曾经有选择更改,并且具有可取消的事件争论,我们甚至可以捕获和取消更改选择。

我以为我会继承列表框并做一些事情,但在内部 Selector 类中的所有功能都被隐藏,我可以在反射器中看到这些功能,但我无法继承和重写任何方法!!

最佳答案

我从 ListBox 派生了一个 MyListBox 类,并添加了名为 SelectionChanging 的事件,该事件是可取消的事件。然后我使用 MyListBoxItem 作为 MyListBox 中的 ItemContainer,它处理预览鼠标左键向上事件并引发选择更改事件,在取消值时,我将事件标记为已处理,这会阻止新的选择,并允许我通知用户执行某些操作。

关于wpf - 如何在WPF中的ListBox中编写 "Selection Changing"事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2802825/

相关文章:

c# - ScrollViewer 上的 DataGrids 阻止它滚动

c# - 如何查询地址? (LINQ 到 XML)

c# - 在组合框中的绑定(bind)项目上使用转换器

c# - 如何在 WPF 应用程序的触摸屏上自然滚动列表框?

c# - 在构成列表框项目的两个控件之间平均分配宽度?

c# - BindingList<T> 如何知道选中的 Item?

c - 信号量安全 shell C

c# - wpf:更改 WebBrowser 控件的字体大小