Carregue um formulário sem mostrá-lo

ersão curta: Desejo disparar o evento Form_Load () sem tornar o formulário visível. Isso não funciona porque Show () ignora o valor atual da propriedade Visible:

tasksForm.Visible = false;
tasksForm.Show();

Versão longa: Eu tenho um aplicativo WinForms com duas formas: principal e tarefas. O formulário principal é sempre exibido. O usuário pode clicar em um botão para abrir o formulário de tarefas ou em alguns botões que apenas executam uma tarefa diretamente sem abrir o formulário de tarefa

Quando um usuário pede para executar uma tarefa diretamente, gostaria de chamar alguns métodos públicos no formulário de tarefas sem mostrá-la. Infelizmente, a lógica da tarefa depende das coisas que acontecem no evento Form_Load (). A única maneira de encontrar o gatilho Form_Load () é chamar Show (). O melhor que pude fazer é mostrar o formulário no estado minimizado:

tasksForm.WindowState = FormWindowState.Minimized;
tasksForm.Show();

Suponho que a solução mais limpa seria extrair a lógica das tarefas do formulário de tarefas e entrar em uma classe de controlador. Em seguida, posso usar essa classe no formulário principal e no formulário de tarefas e carregar apenas o formulário de tarefas quando precisar visível do usuário. No entanto, se for fácil carregar o formulário sem exibi-lo, isso seria uma alteração meno

questionAnswers(8)

yourAnswerToTheQuestion