private async void App_Startup(object sender, StartupEventArgs e) { var splashVM = new SplashViewModel(); var splash = new SplashWindow { DataContext = splashVM, }; splash.Show(); await Task.Yield(); await splashVM.InitializeAsync(null); splashVM.Info = "service1 initializing..."; // await service1.InitializeAsync(); await Task.Delay(150); splashVM.Info = "service2 initializing..."; await Task.Delay(250); splashVM.Info = "service3 initializing..."; await Task.Delay(350); splashVM.Info = "service4 initializing..."; await Task.Delay(450); splashVM.Info = "service5 initializing..."; await Task.Delay(550); splashVM.Info = "finished."; var mainVM = new MainViewModel(); MainWindow = new MainWindow { DataContext = mainVM, }; MainWindow.Show(); await mainVM.InitializeAsync(null); await Task.Delay(1000); splash.Close(); }
protected override async void OnAppearing() { await _viewModel.InitializeAsync(null); base.OnAppearing(); }