Я использую WPF DataGrid с C#/XAML в Visual Studio 2013.C# WPF/XAML Preview Mouse Event для DataGrid
С SelectionMode = "Extended", я в состоянии множественного выбора строк в сетка.
У меня есть требование, когда клики по одному из столбцов сетки игнорируются относительно выбора строки.
Я настраиваю событие PreviewMouseLeftButtonDown, которое вызывается. Поскольку это событие предварительного просмотра, во время обработки события выбор в сетке еще не изменился. Я могу определить строку и столбец щелчка, поэтому я могу определить, что клик был сделан в столбце, который мне не нужен.
Я хочу, чтобы иметь возможность прервать событие клика в этот момент так что никаких изменений в текущих выбранных элементах сетки не будет. Это возможно?
В случае мыши вниз я пытался что-то вроде:
private void GridCtrl_MouseDown(object sender, MouseButtonEventArgs e)
{
// ... Other code
e.Handled = true;
}
Но, несмотря на отмеченные как обработанное, оно все еще продолжается, и выполняет выбор строк. У меня также есть событие SelectionChanged, которое я вижу, что он позже попадает.
Возможно, выбор происходит в MouseUp, и вы должны обработать Prev Событие iewMouseUp? –
Вот и все! Это исправило это. Благодаря! –