我正在使用 Microsoft WPF 数据网格。 我注意到 WPF 数据网格 DataGridTemplateColumn 的奇怪行为。 当您在网格中使用 templateColumn 并且模板列包含一些控件时,当您从上一列进行 Tab 切换时,焦点不会自动分配给模板列中声明的第一个元素。 焦点最初设置在模板列的边框上,当我们再次单击时,焦点将转到第一列。 此问题的任何解决方法。 当我关闭时,如何将焦点设置为数据网格模板列中的第一个元素。
I am using Microsoft WPF datagrid. I have noticed a strange behavior with WPF datagrid DataGridTemplateColumn. When you use the templateColumn in the grid and the template column contains some controls when you tab from the previous column the focus is not automatically given to the first element declared in the template column. The foucs is initally set on the border of the template column and when we tab of once agin the focus goes to the first column. Any workaround for this issue. How can i set the focus to go the first element in the template column of the datagrid when i tab off.
发布评论
评论(4)
我们通过修改DataGridCell上的样式解决了这个问题:
We solved this problem by modifying the style on DataGridCell:
我通过处理网格的PrepareCellForEdit事件解决了这个问题。 这是代码
I got rid of this problem by handling PrepareCellForEdit event of the grid. Here is the code
有一种解决方案使用静态类,并对您想要关注的控件的 Xaml 进行一次更改。 “WPF DataGrid:从一个单元格切换到另一个单元格不会将焦点设置在控件上"
There is a solution using a static class and one change to the Xaml for the control you want focused. "WPF DataGrid: Tabbing from cell to cell does not set focus on control"
我在 WPF datagrid codeplex 讨论中找到了一个链接
http://www.codeplex.com/wpf/Thread/View。 aspx?ThreadId=35540
感谢文森特·西巴尔
I found out a link in WPF datagrid codeplex discussions
http://www.codeplex.com/wpf/Thread/View.aspx?ThreadId=35540
Thanks to vincent sibal