2013-09-03 2 views
1

Я использую Catel в качестве рамки MVVM для разработки приложения WPF.Закрыть окно с Catel

Я открываю окно с помощью UIVisualizerService, предоставленной Catel, как это:

this.uiVisualizerService.ShowDialog(new ViewModel); 

Это отлично работает. Проблема заключается в том, что я не могу закрыть окно, как сказано на сайте Catel

this.CloseViewModel(true); 

При нажатии на кнопку отмены, то команда выполняется, но ничего не происходит.

Подробнее:

Мое окно с фоновым кодом класса:

public partial class Window : Window 
{ 
    public Window() 
    { 
     this.InitializeComponent(); 
    } 
} 

Моя кнопка Отмена:

<Button Command="{Binding CancelCommand}" /> 

Мой метод команды в моем ViewModel:

private void CancelCommandExecuted() 
    { 
     this.CloseViewModel(true); 
    } 

Спасибо заранее!

+0

Вы используете DataWindow или пользовательскую реализацию? –

+0

Нет, не так ли? Можно ли использовать это со стандартным окном WPF? – Loetn

ответ

0

Эта проблема исправлена ​​в новейшей ночной сборке.

Для получения дополнительной информации о проблеме: https://catelproject.atlassian.net/browse/CTL-158

Для получения дополнительной информации о получении последней ночной сборки: https://catelproject.atlassian.net/wiki/display/CTL/Getting+prerelease+%28beta%29+versions+via+NuGet

+0

Это не работает в сочетании со стандартным/по умолчанию WPF-окном. С ночной сборкой я могу закрыть свое окно, если оно происходит из «DataWindow», но не если оно происходит из «окна». – Loetn

+0

Если это регулярное/стандартное окно WPF, то как возможно, что он даже загружается через виртуальную машину. Окно должно содержать WindowLogic или WindowLogicBehavior, чтобы вести себя как окно Catel. –

+0

Хорошо, так что это невозможно? Даже если я открою окно с предоставленной «UIVisualizerService» (как я сказал в начале сообщения)? – Loetn