Ну, для приложения ClickOnce, которое я развернул в прошлом, мы использовали пространство имен Microsoft.VisualBasic для обработки потока заставки. Вы можете ссылаться и использовать сборку Microsoft.VisualBasic из C # в .NET 2.0, и она предоставляет множество приятных сервисов.
protected override void OnCreateSplashScreen()
{
this.SplashScreen = new SplashForm();
this.SplashScreen.TopMost = true;
}
Очень просто, он показывает вашу SplashForm (которую вы должны создать) во время загрузки, а затем автоматически закрывает ее после того, как основная форма завершила загрузку.
Это действительно делает вещи простыми, и VisualBasic.WindowsFormsApplicationBase, конечно, хорошо протестирован Microsoft и имеет множество функций, которые могут сделать вашу жизнь намного проще в Winforms, даже в приложении, которое является 100% C #.
В конце концов, это все IL и байт-код в любом случае, так почему бы не использовать его?