如何从WPF中的单独窗口引发Datagrid RowEditEnding事件?

时间:2018-01-11 14:17:30

标签: c# wpf events datagrid

我的WPF项目中有两个单独的窗口,第一个包含DataGrid,第二个包含一些控件和一个ok按钮。

我想要的是当我点击确定按钮时,将会引发第二个窗口中RowEditEnding的{​​{1}}事件。好吗?

提前致谢。

2 个答案:

答案 0 :(得分:1)

窗口无法提升RowEditEnding的{​​{1}}。它只能处理它。只有DataGrid本身才能真正引发事件。

如果将在事件处理程序中编写的代码移动到独立方法,则只需从其他窗口调用此代码即可。您需要获得对首先定义DataGrid的窗口的引用。

请参阅以下示例代码。

窗口1:

DataGrid

窗口2:

private void DataGrid_RowEditEnding(object sender, DataGridRowEditEndingEventArgs e)
{
    HandleEvent();
}

public void HandleEvent()
{
    //your logic...
}

答案 1 :(得分:0)

试试这个

 private void Button_Click(object sender, RoutedEventArgs e)
{
  Window2 win = new Window2();
  win.Show();
  win.MyGrid.RaiseEvent(new RowEditEnding(sender,e));
}