Как динамически создавать вкладки - PullRequest
2 голосов
/ 17 сентября 2010

Это в C #

Мне нужно в основном сделать TabPages из текстового поля. Текст, например:

textBox1.Text = "test";
TabPage textBox1.Text = new TabPage();

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

String browser = "browser 1";
(textBox1.Text as TabPage).Controls.Add(WebBrowser browser)

Мне нужно, чтобы все имена были динамическими, потому что это будет программа, которая может запускать тесты для учетных записей клиентов. Будет TabControl, который имеет «Номер счета в качестве имени элемента управления tabPage, а затем внутри каждой из этих вкладок будет быть еще одним TabControl с настройкой вкладок с каждым тестом invidivual в его собственной вкладке. Так что вкладки внутри вкладок в основном.

Ответы [ 2 ]

4 голосов
/ 17 сентября 2010

Сделать так, как это выглядит:

        var page = new TabPage(textBox1.Text);
        var browser = new WebBrowser();
        browser.Dock = DockStyle.Fill;
        page.Controls.Add(browser);
        tabControl1.TabPages.Add(page);
        browser.Navigate("http://stackoverflow.com");
        page.Select();
1 голос
/ 17 сентября 2010

На самом деле еще одна вещь, которую я хочу знать: как я могу вызвать эту вкладку @ в другой раз за пределами этой функции?

Это в основном то, как я выглядел.

String browserName = "Test Check";
var tabPageName = new TabPage(textBox1.Text);
var tabPageBrowser = new TabPage(browserName);
var tabPageTabControl = new TabControl();
var browser = new WebBrowser();
tabPageName.Controls.Add(tabPageTabControl);
tabPageTabControl.TabPages.Add(tabPageBrowser);
tabPageBrowser.Controls.Add(browser);
mainTabControl.TabPages.Add(tabPageName);
mainTabControl.SelectedTab = tabPageName;
...