Слой My Application использует DialogPresenters для отображения некоторых ViewModel в различных диалоговых окнах (модальные, заставки и т. Д.).
public DataImportDialogPresenter(DataImportViewModel viewModel, IDialogView shellView, IDialogView owner)
: base(viewModel, shellView, owner)
{
//Base sets the view data context etc.
//Monitor CancelCommand and close the dialog
viewModel.CancelCommand = new DelegateCommand(() => Terminate());
}
Эта установка работает очень хорошо, за исключением того факта, что если мой ViewModel решит, что ему нужно что-то делать по команде CancelCommand (что вполне разумно), то он заменит вызов докладчика на Terminate () или наоборот.
Я хотел бы сделать следующее:
viewModel.CancelCommand += new DelegateCommand(() => Terminate());
В том же духе, что и присоединение обработчиков событий.
- Возможно ли это в C # .NET 3.5?
- Как бы я этого достиг?
- Это плохая практика MVVM?
Спасибо
D * * тысяча двадцать-один