У меня ViewModel, определенный как
public class PlayerViewModel : Screen, IDiscoverableViewModel
Я показываю всплывающее диалоговое окно как
var result = await _dialogManager.ShowDialogAsync(item, new List<DialogResult>() { DialogResult.Cancel });
Здесь item - это другая ViewModel, которая показывает пользовательский интерфейсиз соответствующего представления.Это всплывающее окно отображает некоторую информацию, и его необходимо автоматически закрыть через несколько секунд, если пользователь не нажмет кнопку «Отмена».
Ниже приведено событие «Таймер таймера», которое срабатывает через 10 секунд.
void timer_Tick(object sender, EventArgs e)
{
this.DialogHost().TryClose(DialogResult.Cancel);
}
Но это не работает и выдает исключение, так как this.DialoHost () всегда получает значение NULL.Я попытался это решение , но оно закрывает всю ViewModel, вместо этого я хочу закрыть только диалоговое окно.