Как я могу закрыть первое окно, когда второе активно? c# wpf

#authentication

Вопрос:

Мне нужна твоя помощь. В настоящее время мой проект основан на двух окнах: одно для входа, а другое для других целей. Все команды для кнопок, входа в систему, сброса выполняются в классе «LoginViewModel» с использованием MVVM. Как я могу закрыть первое окно и запустить второе без проблем?

LoginViewModel.CS

 public class LoginViewModel : ViewModelBase {  #region Login Credentials  public string Username { get; set; }  public string Password { get; set; }   #endregion   #region Commands   public ICommand LoginCommand { get; }  public ICommand ResetPasswordCommand { get; }   #endregion   public LoginViewModel()  {  LoginCommand = new RelayCommand(_ =gt; Login());  ResetPasswordCommand = new RelayCommand(_ =gt; Reset());  }   #region Private Methods   private void Login()  {  if (Username == "student" amp;amp; Password == "password")  {  AppMainWindow nw = new AppMainWindow();  nw.Show();  if(nw.IsActive)  {  MainWindow cl = new MainWindow();  cl.Close();  }   } else {  MessageBox.Show("Username or password is incorect!");  }  }  private void Reset()  {  throw new NotImplementedException();  }  #endregion }  

}

Первое окно: Главное окно Другое окно: Окно приложения