选择数据网格事件
本文关键字:事件 网格 数据网 数据 选择 | 更新日期: 2023-09-27 18:34:11
所以我有一个WPF应用程序和一个数据网格,不可编辑,启用了整行选择,我正在尝试使用数据网格行进行一种切换开关功能。但是,我似乎找不到适合简单行选择的事件。有 SelectionChanged
,如果我再次单击已选择的项目,它不起作用。有一个简单的Click
(它们的许多类型),但它们都发生在实际选择行之前,所以如果我尝试在单击时获取所选项目,我会得到 null。还有其他一些事件(我忘记了)需要单击两次,这不是我真正想要的。我的想法用完了,也许有一些好的事件组合或某种方法来覆盖它们,或者我只是错过了一些东西?
考虑到您提供的信息,@Yatrix的解决方案是完全有效的!
但是你已经回应了..
在选择行之前发生,因此不起作用:/
然后你在这里缺少一些东西。即使 LeftMouseDown '' LeftMouseUp '' PreviewLeftMouseDown '' Up 事件发生在选择事件之前,它们也会知道该行是否已被选中。这样他们就可以取消选择它,然后执行
e.Handled=true
....因此,在鼠标事件之后永远不会调用选择,从而避免重新选择。
试着让我知道。
PreviewMouseDown
或PreviewMouseLeftButtonDown
可能会有所帮助。我也在这个网站上找到了这个,可以为您提供方向:
如何让数据网格在选择模式="扩展"时单击时取消选择?
如果要注册"所选"事件行,则需要为 DataGrid 中的每一行执行此操作。尝试在 DataGrid 上注册 LoadRow 事件,并为每一行注册 Selected 事件。