我在带有滚动条的控件中使用 Infragistics XamDataGrid。父控件中还有其他几个控件,我需要能够在父控件中自由滚动。但是,只要鼠标悬停在 XamDataGrid 上,XamDataGrid 就会窃取父焦点并锁定父控件的滚动条。
我查看了 XamDataGrid documentation here
我试过几个属性。将 Focusable
属性设置为 false
没有解决问题。将 IsEnabled
属性设置为 false
有效,但它禁用了整个网格并阻止了与网格的任何交互(duh)。
有没有办法删除/禁用 XamDataGrid 的滚动功能以使其父元素自由滚动,而不更改 XamDataGrid 的其他功能(即不完全禁用与网格的交互)?
编辑:
这个问题真正让我感兴趣的是,它似乎并不仅仅与 XamDataGrid 隔离。我发现 Infragistics 控件有一个东西可以在不应该的时候偷走焦点和类似的多管闲事的行为。
诚然,这些问题中的许多可能可以在逐个控件的基础上得到解决,但我无法动摇存在一些更好的总体解决方案的感觉,尤其是当通过控件属性进行组合无法产生所需的结果时结果。
最佳答案
显然,XamDataGrid 实现了一个捕捉滚动事件的 ScrollView,解决方法是通过事件处理程序将这些事件传递给父 ScrollView。
Infragistics 支持建议了一种方法: http://www.infragistics.com/community/forums/p/107444/506422.aspx#506422
关于c# - WPF Infragistics XamDataGrid 窃取滚动焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38616834/