private void MainWindow_Loaded(object sender, RoutedEventArgs e) { void InitializeBef() { xIcon.Source = BitmapConverter.FromBitmap(Res.Git4Nextop); xRepositoryGrid.IsEnabled = false; } InitializeBef(); async void OnLogin(LoginWindow s) { void InitializeAf() { xRepo.Content = $"{GitManager.User.Name}/\n"; } s.Close(); this.IsEnabled = true; var repo = await GitManager.GetRepositoriesAsync(); var repoMap = new Dictionary <string, List <string> >(); foreach (var item in repo) { string userName = item.Owner.Login; if (repoMap.TryGetValue(userName, out var repoList)) { repoList.Add(item.Name); } else { repoMap.Add(userName, new List <string>()); repoMap[userName].Add(item.Name); } } RepoWindow.Initialize(repoMap); InitializeAf(); MessageBox.Show($"Welcome, {GitManager.User.Name}!", MainTitle, MessageBoxButton.OK, MessageBoxImage.Information); } var login = new LoginWindow(OnLogin); login.Show(); this.IsEnabled = false; }