我在将我的 Winforms 程序转换为 WPF 程序时遇到了另一个问题。在我的第一个程序中,我打开了一个较小的窗口以允许用户调整一些数据,然后当它关闭时,另一个表单再次使用新数据激活。
我form2.ShowDialog();
以前打开窗体,它会自动使父窗体在 Winforms 中停用。这样,当我关闭 form2 时,父表单被激活,并且我能够使用事件处理程序form1_Activated
重新加载并成功重新初始化一些设置。
但是,现在当我尝试用 WPF 做同样的事情时,我仍然可以使用打开 form2 form2.ShowDialog();
,但是当我关闭表单时,它不会注册form1_Activated
事件处理程序。相反,为了重新加载设置,我必须单击另一个窗口,然后回到我的程序中注册form1_Activated
事件处理程序。
我只是做错了什么,还是我应该在 WPF 中使用另一个事件处理程序来实现我在 Winforms 中能够做的同样事情?