【问题标题】:Access parent form component访问父表单组件
【发布时间】:2014-09-19 03:30:35
【问题描述】:

我是 C# 的初学者,我正在尝试更改父表单组件的属性。 我在父表单上有一个调用子表单的按钮,在子表单上我有另一个按钮,当单击它时应该将父表单按钮更改为不可见。 我该怎么办?非常感谢!

【问题讨论】:

    标签: c# forms components


    【解决方案1】:

    让子表单持有对父表单的引用。这可以在私有类变量中完成,例如:

    private ParentForm Parent { get; set; }
    

    如果子窗体总是需要这个引用,在构造函数中需要它:

    public ChildForm(ParentForm parent)
    {
        if (parent == null)
            throw new ArgumentNullException("parent");
        Parent = parent;
    }
    

    所以现在当父表单创建子表单的实例时,它会提供对自身的引用:

    var childForm = new ChildForm(this);
    

    然后,您可以在子表单中的任何位置访问父表单的该实例。例如,父窗体可以公开一个隐藏按钮的方法:

    public void HideButton()
    {
        SomeButton.Visible = false;
    }
    

    然后子窗体可以调用该方法:

    Parent.HideButton();
    

    【讨论】:

      猜你喜欢
      • 2011-06-30
      • 1970-01-01
      • 2019-02-28
      • 2019-12-07
      • 1970-01-01
      • 1970-01-01
      • 2019-06-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多