wpf - 如何使WPF Datagrid列不可聚焦?

标签 wpf focus wpfdatagrid datagridtextcolumn

我有一个WPF DataGrid用于数据输入,但是有些DataGridTextColumn仅用作信息,我已经设置了它们的IsReadOnly="True",因此它们的单元格不会进入编辑模式。但是,他们仍然可以得到我要避免的焦点。

有没有办法做到这一点?

最佳答案

使用单元格样式并设置Focusable = False。

<Page.Resources>
    <Style x:Key="CellStyle" TargetType="{x:Type DataGridCell}">
        <Setter Property="Focusable" Value="False"/>
    </Style>
</Page.Resources>

<DataGrid ItemsSource="{Binding Items}" ...>
    <DataGrid.Columns>
        <DataGridTextColumn 
            CellStyle="{StaticResource CellStyle}" 
            IsReadOnly="True" 
            Header="Name" Binding="{Binding Name}"/>

    ....

关于wpf - 如何使WPF Datagrid列不可聚焦?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10031559/

相关文章:

wpf - 列表项目选择无法正常工作?

android - 编辑文本焦点更改监听器

c# - 如何从 WinForms 中的文本框移除焦点?

WPF 数据网格 : how do I stop auto scrolling when a cell is clicked?

c# - 没有为控件模板中的数据网格设置依赖属性

c# - 单击一次部署后的通知图标设置

wpf - ItemsControl 中的绑定(bind)不起作用

c# - 让用户选择要在 WPF DataGrid 上显示的列

c# - 事件/委托(delegate)字段的 DataContractSerializer 问题

css - 单击时隐藏链接上的轮廓焦点