【问题标题】:Disable focus in WPF DataGrid Row在 WPF DataGrid Row 中禁用焦点
【发布时间】:2011-12-03 12:30:41
【问题描述】:

我有一个 C# WPF DataGrid。在管理员模式下,用户可以使用PreviewKeyDown 突出显示和选择DataGrid 中的行并按下“D”以删除它们。在操作员模式下,此功能将被禁用,用户只能滚动和阅读卷,但不能突出显示或选择要删除的行。

我可以将行加高线并删除。但我不知道如何禁用此功能。 我试过了:

  • IsReadOnly = false 呈现 DataGrid 不可滚动
  • Focusable = false 用户仍然可以突出显示并选择行
  • IsHitTestVisible = false 仍然可见..

怎么做?

【问题讨论】:

    标签: c# wpf datagrid


    【解决方案1】:

    您可以通过在DataGridRow 上设置IsEnabled="False" 来禁用DataGrid 中的选择,同时仍然保持排序、滚动等。

    这具有大多数元素获得“灰显”/禁用外观的副作用,但 TextBlocks 并非如此。

    <DataGrid ...>
        <DataGrid.RowStyle>
            <Style TargetType="DataGridRow">
                <Setter Property="IsEnabled" Value="False"/>
            </Style>
        </DataGrid.RowStyle>
        <!-- ... -->
    </DataGrid>
    

    【讨论】:

      猜你喜欢
      • 2011-04-06
      • 1970-01-01
      • 2012-09-17
      • 1970-01-01
      • 2013-04-03
      • 1970-01-01
      • 2011-01-30
      • 2010-10-19
      • 2012-10-04
      相关资源
      最近更新 更多