Мне было интересно, есть ли способ закрыть окно при изменении свойства в модели представления. В моей ситуации у меня есть окно входа в систему с кнопкой Ok, привязанной к команде LoginCommand, чтобы функция Login выполнялась при нажатии кнопки Ok. Если вход выполнен успешно, я хочу закрыть окно.
Теперь я знаю, что могу сделать это, добавив обработчик событий на мою кнопку, который вызывает такую функцию:
private void Button_Click(object sender, RoutedEventArgs e)
{
DatabaseCredentialsViewModel vm = (this.DataContext as DatabaseCredentialsViewModel);
vm.Login();
if (vm.LoginSuccessful)
{
this.Close();
}
}
Но мне было интересно, есть ли способ закрыть окно, когда свойство LoginSuccessful изменяется, не имея обработчика событий на моей кнопке (мне нравится работать только с привязкой команды и не иметь обработчиков событий для события Click).
Спасибо