c# - ParentForm 为空(在 Form 内的 UserControl 内的 Button 中)!

标签 c# winforms visual-studio-2008

我让这段代码工作了!

我的 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/

相关文章:

c# - 如何自动解决 C# 依赖项?

c# - 如何在 C# 中按名称区分用户设置?

c# - Windows 应用程序已停止在客户端计算机中工作

vb.net - Visual Basic 2008中的集合初始化语法?

c# - 在 web.config 值中使用 HTML 下标

c# - 如何在没有 CopyFile 或 CopyFileEx 的情况下在 Windows 上复制大文件?

c# - 延迟执行和急切评估

c# - 在c#中以只读方式打开SQLITE

c++ - 安装位置缺少头文件

找不到输入文件 'libc.lib'