щелкните правой кнопкой мыши на строке сетки - PullRequest
0 голосов
/ 28 марта 2010

проблема в том, что при щелчке правой кнопкой мыши по строке сетки выбранный элемент становится пустым. Как сделать выбранную строку сетки при щелчке правой кнопкой мыши по какой-либо строке?

спасибо Джамал

Ответы [ 2 ]

1 голос
/ 30 марта 2010

Я думаю, что решение может иметь проблему. Каждый раз, когда строка загружается, она добавляет обработчик событий, поэтому, если строка когда-либо используется повторно, она может накапливать обработчики событий. Я бы порекомендовал удалить обработчик событий, когда строка выгружена. Вот мой предложенный код:

private void dg_LoadingRow(object sender, DataGridRowEventArgs e)
{
    e.Row.MouseRightButtonDown += new MouseButtonEventHandler(Row_MouseRightButtonDown);
}
void Row_MouseRightButtonDown(object sender, MouseButtonEventArgs e)
{
    dg.SelectedItem = ((sender) as DataGridRow).DataContext;
}
// new portion
private void dg_UnloadingRow(object sender, DataGridRowEventArgs e)
{
    e.Row.MouseRightButtonDown -= new MouseButtonEventHandler(Row_MouseRightButtonDown);
}
0 голосов
/ 30 марта 2010
...