MDI Parent form Panel Control добавление дочерних форм

Я работаю в настольном приложении на С#. У меня есть родительская форма MDI с панелью управления для добавления в нее дочерних форм. У меня есть 2 дочерние формы:

  1. ChildForm1
  2. ChildForm2

Childform2 открывается из childform1.

Из формы MDI я добавляю дочернюю форму1 в панель управления, знаю, что хочу добавить дочернюю форму2 также в панель управления формой mdi. Когда я нажимаю кнопку на дочерней форме1, из элемента управления панелью формы mdi необходимо удалить дочернюю форму1, а дочерняя форма2 будет добавлена ​​к элементу управления панелью формы mdi.

Как решить эту проблему?


person Shahid Iqbal    schedule 15.09.2012    source источник


Ответы (1)


Сначала вы открываете ChildForm2 из ChildForm1, передавая ссылку ChildForm1 на ChildForm2.

 ChildForm2 objChildForm2 = new ChildForm2(this);
 objChildForm2.MdiParent = this.MdiParent;
 objChildForm2.Show();

Теперь перейдите к вашему ChildForm2 и добавьте конструктор Parametrize, а также создайте глобальный объект ChildForm1.

ChildForm1 objChildForm1 = null;

 public ChildForm2(ChildForm1 obj)
    {
        InitializeComponent();

        objChildForm1 = obj; // Passing refrence of ChildForm1
        obj.Hide(); // this will hide the ChildForm1
    }   

Теперь, когда ваш ChildForm2 откроется, будет вызван конструктор параметров выше, и он скроет ваш ChildForm1. Также вы можете повторно открыть свою ChildForm1 при закрытии ChildForm2. Для этого напишите следующий код.

    private void btnClose_Click(object sender, EventArgs e)
    {

        objChildForm1.Show();// you can access all public members of ChildForm1 by the Global   //object "objChildForm1"
        this.Close();
    } 
person Tarun Tak    schedule 15.09.2012
comment
Спасибо за ответ.... Проблема в том, как добавить childform2 в панель управления формой mdi.... Шахид Икбал.... - person Shahid Iqbal; 15.09.2012