Как открыть ChildrenForm, нажав кнопку в другой детской форме - PullRequest
0 голосов
/ 01 мая 2020

У меня есть детская форма под названием Products, которая активна в MDIForm под названием Form1; как я могу отобразить форму Add Product вместо формы Products, нажав кнопку 1 в форме Products.

Это как я отображал дочернюю форму: (код FORM1)

public void activeChildrenForms(Form form)
        {
            disposeChildrenForms(form);
            form.MdiParent = this;
            form.Dock = DockStyle.Fill;
            form.Show();
        }

И, таким образом, я уничтожаю уже созданную форму:

public void disposeChildrenForms(Form form)
        {
            foreach (Form frm in this.MdiChildren)
            {
                if(!frm.Focused)
                {
                    frm.Visible = false;
                    frm.Dispose();
                }
            }
        }

Я пробовал такой вариант, но он не показывает мне что-нибудь: в форме продукта я добавил;

private void button1_Click(object sender, EventArgs e)
        {
            Form1 f1 = new Form1();
            f1.activeChildrenForms(new AddProduct());
        }

Единственный способ, которым я почти преуспел, был, когда я добавил это. Show () к activeChildrenForms (), но в этом случае я получаю вторую форму, которая отображает желаемый результат и первый остается на предыдущем этапе.

Буду очень признателен, если вы хотя бы сможете дать мне представление о том, как я могу это сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...