0

我有一个 mdi 父母和 mdi 孩子,我想知道我应该设置什么条件来为此调用正确的课程。

情景是我在 mdi 父级(全选)中有一个按钮,然后我想将该按钮用于活动的 mdi 子级。

让我们说:

private void iSelectAll_ItemClick(object sender,  e)
        {
            Form DtexteditoR = new DtexteditoR();
            //DtexteditoR.Show();

            if (DtexteditoR.MdiChild == true)
            {
                    rtb.SelectAll();
            }

        }

但是一个错误

运算符 == 不能应用于“System.Windows.Forms.Form”和“bool”类型的操作数

出现……我该怎么办?

4

2 回答 2

3

您需要Form.IsMdiChild检查表格是否为 Mdi Child。

获取一个值,该值指示窗体是否为多文档界面 (MDI) 子窗体。

private void iSelectAll_ItemClick(object sender,  e)
{
    Form DtexteditoR = new DtexteditoR();
    //DtexteditoR.Show();

    if (DtexteditoR.IsMdiChild)
    {
            rtb.SelectAll();
    }

}

检查MdiContainer使用Form.IsMdiContainer属性

于 2013-05-10T05:11:32.780 回答
0

编写一个继承自Form类的表单类并实现以下方法(MasterForm):子类的主表单类中的方法:selectAll

public class  MasterForm:Form
{
public virtual void SelectAll()
{
}
}

每个子表单必须继承自 MasterForm 并覆盖 SelectAll 方法

public class Child1:MasterForm
{
public override void SelectAll()
{
    this.rtb.SelectAll();
 }
}

在按钮单击正文中的父表单中

if(this.ActiveMdiChild!=null)
{
        MasterForm frm =(MasterForm) this.ActiveMdiChild;     
      frm.SelectAll();
}
于 2013-05-10T05:24:20.017 回答