Несколько форм в одном окне

Тривиальный вопрос. Есть приложение на WinForms, в котором есть родительские и дочерние формы, которые открываются методом Form.ShowDialog(). Если открыты несколько форм (родительских и сверху их дочерних), то при наведении на значок приложения на панели задач, отображаются все формы в виде n-ого количества окон. Необходимо сделать так, чтобы все формы отображались как одно окно. Как это лучше всего сделать?


Ответы (1 шт):

Автор решения: S.H.

У формы есть свойство ShowInTaskbar

Если его установить у дочерних окон в false - они не будт вам "портить картину"

Минимальный пример кода - форма с одной кнопкой, при создании нового экземпляра перед показом я устанавливаю это свойство:

    using System;
    using System.Windows.Forms;

    namespace Tst01 {
        public partial class Form1 : Form {
            public Form1() {
                InitializeComponent();
                button1.Click += Button1_Click;
            }

            private void Button1_Click(object sender, EventArgs e) {
                Form1 new_frm = new Form1();
                new_frm.ShowInTaskbar = false;
                new_frm.ShowDialog();
            }
        }
    }
→ Ссылка