更详细地阐述我的评论;这是一个常见问题,可能有点令人困惑。但是使用委托来管理表单之间的数据。这是一些代码。我不能保证它已准备好编译,但它应该有助于向您展示如何正确执行此操作。
public partial class MainWindow : Window
{
public delegate void MenuClickedDelegate();
public MainWindow()
{
InitializeComponent();
}
private void MenuItem_Click(object sender, RoutedEventArgs e)
{
YourDialog yourDialog = new YourForm();
yourDialog .MenuClickCallback = new MenuClickedDelegate(this.DoSomething);
yourDialog .ShowDialog();
}
private void DoSomething()
{
}
}
然后为您的对话框:
public partial class YourDialog : Window
{
public MainWindow.MenuClickedDelegate MenuClickCallback;
public YourDialog()
{
InitializeComponent();
}
private void Edit_Click6S(object sender, RoutedEventArgs e)
{
this.close();
MenuClickCallback;
}
}