Wpf DataGrid DoubleClick имеет странное поведение - PullRequest
2 голосов
/ 30 ноября 2010

Я работаю с Wpf DataGrid. Я обработал событие MouseDoubleClick DataGrid, чтобы подробно открыть запись на отдельной странице. Таким образом, функциональность должна быть такой, как если бы я дважды щелкнул по записи, и она должна открыться на отдельной странице. В настоящее время, когда я дважды щелкаю заголовок DataGrid (заголовок столбца) или ScrollBar, он дважды щелкает выбранную строку (выбранную запись). Я хочу, чтобы он дважды щелкнул по строке, если только дважды щелкнуть по строке. Любая помощь, пожалуйста!

Ответы [ 2 ]

3 голосов
/ 04 января 2011

Попробуйте обработать событие LoadingRow в DataGrid, а затем событие DoubleClick в каждой строке:

private void dataGrid1_LoadingRow(object sender, DataGridRowEventArgs e)
{
    e.Row.MouseDoubleClick += new MouseButtonEventHandler(Row_MouseDoubleClick);
}
1 голос
/ 28 июня 2011

При обращении к DataGrid (нажатие на заголовки столбцов) иногда вызывается событие LoadingRow.

Мне пришлось отписаться и повторно подписаться на MouseDoubleClick, чтобы сделать эту работу:

private void dataGrid1_LoadingRow(object sender, DataGridRowEventArgs e) {
    e.Row.MouseDoubleClick -= Row_MouseDoubleClick;
    e.Row.MouseDoubleClick += Row_MouseDoubleClick;
}
...