Caliburn Micro отменить окно закрыть из ViewModel - PullRequest
12 голосов
/ 09 января 2012

Когда пользователь нажимает кнопку закрытия окна, можно ли отменить закрытие из ViewModel или мне приходится прибегать к коду позади?

Из того, что я могу сказать, CanClose или TryClose не работают.

1 Ответ

22 голосов
/ 09 января 2012

Возможно, вы уже пробовали это, но я только что создал быстрый тест, извлекая модель представления из Screen и переопределяя CanClose.

public class ShellViewModel : Screen
{
    public override void CanClose(Action<bool> callback)
    {
        //if(some logic...)
        callback(false); // will cancel close
    }
}
...