如何绑定命令以双击DataGrid中的一行
||
我已经开发了WPF UserControl,旨在用作选择列表,如下所示:
绑定到实体(例如,员工)的CollectionView的DataGrid
DataGrid上方的文本框,可用于过滤DataGrid中显示的项目。
我想公开一个命令,该命令将在用户双击DataGrid中的一行时执行。然后,容器可以通过对DataGrid中的SelectedItem进行操作来对此做出反应。
到目前为止,我已尝试按以下方式处理双击:
<DataGrid IsReadOnly=\"True\">
<DataGrid.InputBindings>
<MouseBinding MouseAction=\"LeftDoubleClick\" Command=\"... />
</DataGrid.InputBindings>
...
但是,当用户单击DataGrid标头时,双击事件仍然会触发。我希望能够对其进行限制,以便仅在双击DataGrid主体时才执行Command。有声明方式可以做到这一点吗?
更新
我只是想掌握WPF和MVVM,并真的在寻找有关如何实现这种低级可重用组件的指南。任何一般性建议也将不胜感激并接受。就目前而言,我假设我希望此UserControl:
公开一个依赖属性\“ SelectedItem \”绑定到DataGrid \的SelectedItem
公开一个RoutedEvent \“ ItemDoubleClick \”或当用户双击某行时触发的类似事件。
实现ICommandSource
,然后从行双击事件处理程序中调用CommandHelpers.ExecuteCommandSource(this)
。
没有找到相关结果
已邀请:
2 个回复
肉簧咸缮
焙恍挝厂熄