【问题标题】:How do I access data from a docked form?如何从停靠的表单访问数据?
【发布时间】:2010-10-22 13:30:19
【问题描述】:

我在我的应用程序中使用http://sourceforge.net/projects/dockpanelsuite/ 作为停靠控件,并添加了一个表单作为停靠容器,我需要从中访问主表单中的字符串。我只是想看看是否可以使用 (Owner as MainWindow) 加载它,但它不起作用。

        for (int i = 0; i < (Owner as MainWindow).str.Count; i++)
        {
            MessageBox.Show("A");
        }

我总是在第一行收到错误消息“对象引用未设置为对象的实例。”有什么方法可以从停靠表单访问字符串 str (顺便说一句,它是一个公共字符串)?

如果不清楚,请告诉我。

【问题讨论】:

    标签: c# docking


    【解决方案1】:

    在创建此表单(您的停靠容器)时传递 MainForm 的引用。 例如

    在您的停靠容器中添加一个构造函数:

    MainForm GUImainform;
    public dockingContainerForm(ref MainForm mymainform)
    {
       GUImainform=mymainform;
    }
    

    因此您可以在创建时将 MainForm ref 传递给此表单:

    dockingContainerForm dcForm=new dockingContainerForm (ref this);
    

    并使用 GUImainform 在此停靠表单中访问您的 MainForm。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多