很难弄清楚这个..
我目前有一个 frmMain 和一个 frmLoading..
在 frmMain 显示事件中,我正在做
frmLoading 负载 = 新 frmLoading();
加载.ShowDialog();
在 frmLoading.. 我想访问 frmMain..
我知道我可以在构造函数中传递以前的表单
但如果可能的话,我想避免这种情况。
以为是this.Owner,或this.Parent..不,搜索了“this”,“Form”中的所有属性..找不到它..
任何想法?
最佳答案
避免让 Winforms 猜测谁应该是所有者,使其明确:
frmLoading load = new frmLoading();
load.ShowDialog(this);
现在,只要 Load 事件运行,您就可以可靠地使用 Owner 属性找到所有者。如果您在构造函数中需要它,那么您将不得不将它作为构造函数参数传递,这当然不是问题,也是首选解决方案,因为它不依赖于您使用的 Show 重载。考虑使用事件来避免耦合。
关于c# - 执行showdialog后如何访问以前的表单?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7013059/