#c_sharp #winforms
При запуске приложения пользователю показывается форма с авторизацией. Она есть главной
формой в проекте. В зависимости от статуса пользователя открывается форма для простого
пользователя или форма для администратора, при этом главную форму хочу закрывать. Можно
ли как-нибудь динамически присвоить статус главной формы проекта другой форме, чтобы
при закрытии главной формы, заданной в Main(), можно было продолжать работать с другой
формой проекта.
Ответы
Ответ 1
Можно изменить главную форму через ApplicationContext: static class Program { public static ApplicationContext Context { get; set; } ////// The main entry point for the application. /// [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Context = new ApplicationContext(new Form1()); Application.Run(Context); } } в форме логина: private void button1_Click(object sender, EventArgs e) { Program.Context.MainForm = new Form2(); this.Close(); // покажет вторую форму и оставит приложение живым до ее закрытия Program.Context.MainForm.Show(); }
Комментариев нет:
Отправить комментарий