Здесь мой код:
public MainForm()
{
InitializeComponent();
MyServiceSettings obj = (MyServiceSettings)ConfigurationManager.GetSection("MyServiceSettings");
foreach (MyServiceConfigElement service in obj.Services)
CreateServiceControl(service);
}
private void CreateServiceControl(MyServiceConfigElement service)
{
TabPage tp = new TabPage(service.Name);
tabControl1.TabPages.Insert(0, tp);
//tabControl1.TabPages.Add(tp);
tabControl1.Refresh();
}
В двух словах он читает раздел в файле конфигурации и создает вкладку для каждого элемента раздела.
У меня уже есть один статический TabPage, созданный во время разработки. Я хочу, чтобы динамические созданные вкладки были вставлены перед этой статической вкладкой.
Запустив этот код, tabcontrol показывает только статическую закладку.
Если я сделаю это изменение:
private void CreateServiceControl(SoftInfoServiceConfigElement service)
{
TabPage tp = new TabPage(service.Name);
//tabControl1.TabPages.Insert(1, tp);
tabControl1.TabPages.Add(tp);
tabControl1.Refresh();
}
Использование метода Add показывает все страницы. Но я не получаю заказ, который я хочу.
Есть ли что-то, что я не понимаю с помощью метода Insert? Почему он работает?