Дополнительные окна или формы входящие в состав вашего приложения

вам может понадобиться всплывающий диалог

Часто вам потребуется создавать дополнительные окна или формы, входящие в состав вашего приложения Windows Forms. Вам может понадобиться всплывающий диалог, предлагающий пользователю установить предпочтения, или вам потребуется открыть отдельное окно просмотра для вывода результатов некоторого запроса. Способ, каким это делается в Windows Forms, очень прямолинеен.

Если вы просто хотите открыть новое окно для представления некоторых дополнительных данных, вы создаете экземпляр класса формы для этого окна и вызываете метод Show, Чтобы его отобразить:

Тем самым окно будет открыто в немодальном режиме — форма будет отображена в качестве окна верхнего уровня, и вы сможете взаимодействовать с ней независимо от главной формы, которая ее запустила. Однако новая форма все равно будет исполняться в том же потоке, что и главная форма. Вы можете взаимодействовать с этими формами одновременно, потому что они обслуживаются одной накачкой сообщений Windows, которая была организована в методе Main При запуске приложения. Если вы закроете главную форму, являющуюся владельцем накачки, другие формы будут закрыты и приложение будет завершено, поскольку период жизни главного потока приложения определяется накачкой сообщений главной формы. Поэтому вы можете рассматривать формы, запущенные подобным образом, в качестве дочерних окон или немодальных диалогов. Если вы хотите отобразить форму в качестве модального диалога, то должны вместо Show Вызвать метод ShowDialog. Тем самым взаимодействие с запускающей формой будет блокировано до тех пор, пока форма, запущенная вызовом ShowDialog, Не будет закрыта.