Как определить, находится ли ячейка данных wpf в режиме редактирования? - PullRequest
1 голос
/ 02 февраля 2011

Существует два сценария:

  1. Вы выбираете строку и нажимаете клавишу удаления, чтобы удалить строку.

  2. Вы выбираете ячейку и когдаего текст выделяется, вы нажимаете клавишу удаления, чтобы удалить текст.

Как я могу различить два?в обоих случаях я ловлю PreviewKeyPress, и ключом является клавиша Delete, выбранная строка одинакова.

Ответы [ 2 ]

8 голосов
/ 02 февраля 2011

Для определения источника нажатия клавиш введите e.OriginalSource в PreviewKeyPress(..) и проверьте, успешно ли приведено DataGridRow или DatagridCell.

DataGrid имеет свойство IsReadOnly.

0 голосов
/ 02 февраля 2011

Проверьте выбранное DataGridCell IsEditing свойство , возможно?Я предполагаю, что, если вы выбрали целую строку, будет либо нет выбранной ячейки, либо IsEditing будет ложным на выбранных ячейках (поскольку я не верю, что вы можете редактировать ячейки, когда несколькоselected).

Этот подход может не работать, если при выборе строки он автоматически выбирает, скажем, ячейку в первом столбце и переводит ее в режим редактирования ... Но я не могу это проверитьна данный момент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...