окна формы вкладок страниц: запустить форму на разных вкладках из командной строки - PullRequest
0 голосов
/ 23 ноября 2011

У меня есть форма окна, которую я хочу запустить на разных вкладках из командной строки.Это потому, что форма может быть запущена службой time / cron в дату / время, указанное пользователем.

Как заставить контекст приложения формы перейти на первую вкладку не по умолчанию?

    [STAThread]
    static void Main (string[] args)
    {
        Debug.WriteLine("Environment Args= {0}", args.Count());
        for (int i=0; i < args.Count(); i++)
        {
            Debug.WriteLine(String.Format("{0}:{1}", i, args[i]));
        }
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        Form myForm = new DailyDirectories();
        if (args.Count() > 0)
        {
            Application.Run(myForm.??? );
        }
    }

Ответы [ 2 ]

0 голосов
/ 23 ноября 2011

Вы можете попытаться передать параметр в класс формы или , даже задав свойство .

Form myForm = null;
if (args.Count() > 0)
{
     // in case args[0] contains the start index for your tabControl
     int tabStartIndex = int.Parse(args[0]);
     myForm = new DailyDirectories(tabStartIndex);          
     Application.Run(myForm);
} else // e.g. start form without index

в вашей формекласс вы должны будете добавить / изменить источник.

class DailyDirectories ...
{
    /// add constructor or change default constructor
    pubic DailyDirectories(int tabStartIndex)
    {
       InitializeComponents();
       this.tabControl.SelectedIndex = tabStartIndex;
    }

}
0 голосов
/ 23 ноября 2011

Поскольку вы говорите о вкладках, я думаю, у вас есть Tabcontrol, так почему бы вам не установить нужную вкладку в событии Load() формы?

 private void Form_Load(object sender, EventArgs e)
 {
   this.tabControl.SelectedIndex = YourIndex;
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...