那你直接在子窗口中的Closing事件中使父窗口的按钮不可用不就行了吗

解决方案 »

  1.   

    怎么得到父窗口?
    MainForm parentFormA=(MainForm)this.ParentForm  ?
    我很菜,麻烦详细一点。:)
      

  2.   

    You can get what you need by overriding MDIChildForm's constructor.For example:
    namespace abc
    {
    public class Form1 : System.Windows.Forms.Form
    {
    private System.Windows.Forms.Button button1;
    public System.Windows.Forms.Button button2;private void button1_Click(object sender, System.EventArgs e)
    {
    Form2 frm=new Form2(this);
    frm.MdiParent=this;
    frm.Show();
    }
    private void button2_Click(object sender, System.EventArgs e)
    {
    MessageBox.Show(this.MdiChildren.Length.ToString());
    }
    }
    public class Form2 : System.Windows.Forms.Form
    {
    Form1 frm1;
    public Form2(Form1 frm)
    {
    InitializeComponent();
    this.frm1=frm;
    }
    private void Form2_Closed(object sender, System.EventArgs e)
    {
    this.frm1.button2.Enabled=false;
    }
    }
    }