我让这段代码工作了!
我的 UserControl 内有一个按钮,在设计时掉落在我的表单中。一切正常,当我在按钮事件中调用 this.ParentForm 时,它正确地向我返回了(唯一的)父表单。
重构后,我将带有按钮的 UserControl 移至另一个 NameSpace,但同一段代码不再有效。 this.ParentForm 现在为 NULL!
我阅读了 MSDN 站点,它说只有当控件托管在 IE 或其他上下文中时,this.ParentForm 才会返回 null。但我只移动了 namespace !
有人有想法吗?
我不能使用不同的构造函数将父窗体传递给它,因为在设计时 Visual Studio 不会呈现窗体。
最佳答案
在将控件添加到窗体之前,查看您是否正在访问控件的父窗体。
您的代码可能会在用户控件类初始化时触发,但该控件尚未添加到父窗体。
尝试将此代码放入 Control Load 事件中。
关于c# - ParentForm 为空(在 Form 内的 UserControl 内的 Button 中)!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4871578/