事件处理程序和数据网格

时间:2012-06-21 09:26:27

标签: c# wpf wpfdatagrid

我在数据网格控件中处理SelectionChanged事件时遇到了一些问题。当用户选择另一行时,我想显示一条消息。显示的消息框没问题,工作正常,但选择速度慢,因为我调用了这样的事件

private void dgemp_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    MessageBox.Show(((Emplooyee)dgemp.SelectedItem).fullname);
}

也就是说,只有当我关闭消息框时,才会看到数据网格上出现选择突出显示。 是否有方法或其他事件我可以使用或调用以使其一次选择行?

2 个答案:

答案 0 :(得分:0)

使用此:

private void dgemp_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
    MessageBox.Show(((Emplooyee)dgemp.SelectedItem).fullname);
}

答案 1 :(得分:0)

MessagebBox是模态的,在打开时会暂停执行。我的建议是创建一个单独的窗口来显示你的消息,在你的DataGrid窗口的单独控件中显示你的消息,或者你可以尝试使用Dispatcher.BeginInvoke异步创建你的MessageBox。