0

Подскажите, пожалуйста, возможно ли закрыть окно через xaml по привязки к свойстку во ViewModel. То есть, например, есть окно которое должно автоматически закрываться (скрываться) после выполнения логики.

  • Самое простое - сделайте интерфейс с действием закрытия (например public interface IClosable { Action Close(); }), унаследуйтесь от него в MainViewModel (или кто у вас там главный для окна), ну а в окне, по событию Loaded сделайте чет по типу if (DataContext is IClosable cl) { cl.Close += () => { ... }; }, прописав вместо ... логику закрытия. Все, теперь можете в VM спокойно вызывать Close?.Invoke(); и окно закроется. Но в этом способе есть ряд тонкостей, ну и если вам нужна полноценная работа с окнами (открыть, закрыть, диалог), то лучше написать свой менеджер окон. – EvgeniyZ Feb 05 '22 at 10:19
  • Ну если совсем декларативно, то такое. – vitidev Feb 05 '22 at 10:57

0 Answers0