Добавление одной и той же панели на несколько вкладок - PullRequest
1 голос
/ 02 июня 2010

В моем предыдущем вопросе Я мог бы добавить панель времени разработки на вкладку во время выполнения, и мой код выглядит следующим образом, и он работает нормально.

        tabControl1.SuspendLayout();
        tabControl1.TabPages[0].Controls.Add(panel1);
        tabControl1.ResumeLayout();

но теперь мне нужно сделать что-то вроде этого:

    tabControl1.SuspendLayout();
    tabControl1.TabPages[0].Controls.Add(panel1);
    tabControl1.TabPages[1].Controls.Add(panel1);
    tabControl1.TabPages[2].Controls.Add(panel1);
    tabControl1.ResumeLayout();

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

Проблема в том, что панель добавляется только к Last tabPage, Как я могу это исправить? Я хочу, чтобы его добавили на все вкладки Спасибо.

1 Ответ

5 голосов
/ 02 июня 2010

Вы не можете. Элемент управления может иметь только одного родителя одновременно. К счастью, одновременно видна только одна вкладка, так что я думаю, вы могли бы перемещать панель между страницами, когда они отображаются? С другой стороны, если панель должна быть расположена в одном и том же месте для всех страниц, возможно, она не должна располагаться внутри элемента управления вкладкой, а скорее поверх ее?

...