繁体   English   中英

ParentForm为null(在Form内UserControl内的Button中)!

[英]ParentForm is null (in a Button inside a UserControl inside a Form)!

我使此代码正常工作!

我在设计时将用户控件放在窗体中的UserControl中有一个按钮。 一切运行良好,当我在按钮事件中调用this.ParentForm时,它正确地返回了(唯一的)父窗体。

重构之后,我将带有按钮的UserControl移到了另一个NameSpace,并且相同的代码不再起作用。 this.ParentForm现在为NULL

我读了MSDN站点,它说仅当控件托管在IE或其他上下文中时,this.ParentForm返回null。 但是我只移动了名称空间!

有人有主意吗?

我不能使用其他构造函数将其传递给父窗体,因为在设计时Visual Studio不会渲染该窗体。

在将控件添加到窗体之前,请查看您是否正在访问控件的父窗体。

您的代码可以在用户控件类初始化时触发,但是控件尚未添加到Parent窗体中。

尝试将此代码放入“控制负载”事件中。

查看包含设计者生成的代码的代码隐藏文件。 在重命名过程中,您可能已经使Visual Studio设计器感到困惑,并且可能已“孤立”了Form.designer.cs文件中的控件实例。

特别是,请查看InitializeComponent方法中的代码,看看是否可以发现创建UserControl实例但不将其添加到容器中或将其添加到未添加到窗体中的容器中的任何代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM