我在我的应用程序中使用http://sourceforge.net/projects/dockpanelsuite/作为对接控件,我添加了一个表单作为对接容器,从中我需要从主窗体中访问一个字符串。我只是乱搞,看看我是否可以使用(所有者作为MainWindow)加载它,但它不起作用。
for (int i = 0; i < (Owner as MainWindow).str.Count; i++)
{
MessageBox.Show("A");
}
我总是在第一行“对象引用未设置为对象实例”时出错。有没有办法可以从停靠的表单中访问字符串str(它是一个公共字符串btw)?
如果不清楚,请告诉我。
答案 0 :(得分:0)
创建此表单(对接容器)时传递MainForm的引用。 e.g。
在停靠容器中添加构造函数:
MainForm GUImainform;
public dockingContainerForm(ref MainForm mymainform)
{
GUImainform=mymainform;
}
因此您可以在创建时将MainForm引用传递给此表单:
dockingContainerForm dcForm=new dockingContainerForm (ref this);
并使用GUImainform
访问此停靠窗体内的MainForm。