【发布时间】:2012-12-15 12:06:36
【问题描述】:
我正在使用 WPFDataGrid 控件,并希望通过单击将键盘焦点设置为选定的Cell。默认情况下,用户必须双击单元格才能开始编写。我试过代码是:
<Style TargetType="{x:Type DataGridCell}" x:Key="DataGridCellStyle">
<Setter Property="IsTabStop" Value="True" />
<Setter Property="Focusable" Value="True" />
<Style.Triggers>
<Trigger Property="IsKeyboardFocusWithin" Value="True">
<Setter Property="IsEditing" Value="True" />
</Trigger>
</Style.Triggers>
</Style>
当我点击一个单元格时,它会到达Editmode,我需要再次点击以设置键盘焦点并开始写作!
【问题讨论】:
-
您需要仅 xaml 的解决方案吗?
-
是的,它会很棒,但我也可以使用后面的代码。
-
您可以处理鼠标点击事件,然后使用 VisualTreeHelper.HitTest 方法。然后遍历可视化树到 DataGridCell 并做你需要的。将焦点放在它上面,设置为 Selected 等等。
-
我不知道如何将焦点放在它上面?!!我应该访问它的文本框吗?
标签: wpf wpfdatagrid