Как отключить отмену выбора в datagrid - PullRequest
0 голосов
/ 08 ноября 2018

У меня есть сетка данных с SelectionMode = "один", но когда я нажимаю "Ctrl" и выбираю выбранный строка, она стала невыбранной . Есть способ отключить команду 'ctrl' или сделать так, чтобы при нажатии она не отменяла выбор выбранной строки?

Я использую WPF и MVVM Pattern.

Я пытался с

PreviewMouseLeftButtonDown = "DataGrid_PreviewMouseLeftButtonDown"

и обработал это так, но не сработало:

private void DataGrid_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
    {

 e.handled = true;

    }

`

1 Ответ

0 голосов
/ 09 ноября 2018

Ответ здесь предполагает, что есть нечто большее, чем просто установка Handled в значение true. Также это может быть полезно.

В обоих случаях результат может выглядеть следующим образом:

void DataGridPreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
    e.Handled = true;

    var result = VisualTreeHelper.HitTest(gd, e.GetPosition(gd));
    var row = DependencyObjectHelper.FindAncestor<DataGridRow>(result.VisualHit);
    if (row != null && !row.IsSelected)
        row.IsSelected = true;
}

Я предлагаю вам поближе познакомиться с существующими вопросами и ответами и объединить их, чтобы выполнить то, что вы хотите.

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