Отключить фокус в строке данных WPF - PullRequest
2 голосов
/ 08 октября 2011

У меня есть C # WPF DataGrid .В режиме администратора пользователь может выделить строки и выбрать их в DataGrid и нажать клавишу «D», чтобы удалить их, используя PreviewKeyDown.В режиме оператора эта функция будет отключена, и пользователь может только прокручивать и читать роллы, но не может выделять или выбирать строки для удаления.

enter image description here

Я могу получить строки, которые будут выделены иудален.Но я не знаю, как отключить эту функцию.Я пытался:

  • IsReadOnly = false делает DataGrid не прокручиваемым
  • Focusable = false пользователь все еще может выделять строки и выбирать строки
  • IsHitTestVisible = false все еще видимыми ..

Как?

1 Ответ

4 голосов
/ 08 октября 2011

Вы можете отключить выбор в DataGrid, сохраняя сортировку, прокрутку и т. Д., Установив IsEnabled="False" на DataGridRow.

У этого побочного эффекта есть то, что большинство элементов приобретают «серый» / отключенный вид, однако это не относится к TextBlocks.

<DataGrid ...>
    <DataGrid.RowStyle>
        <Style TargetType="DataGridRow">
            <Setter Property="IsEnabled" Value="False"/>
        </Style>
    </DataGrid.RowStyle>
    <!-- ... -->
</DataGrid>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...