- <UserControl.CommandBindings>
- <CommandBinding:NamedCommandBinding Command="ApplicationCommands.Save" CommandName="Save" />
- </UserControl.CommandBindings>
* This source code was highlighted with Source Code Highlighter.А в презентере надо пометить методы для CanExecute и Execute соответствующими атрибутами. Выглядит вот так
- public class BindToNamedCommandVM : INotifyPropertyChanged
- {
- [NamedCanExecute("Save")]
- public bool SaveCanExecute(object obj)
- {
- return CanExecute;
- }
-
- [NamedExecute("Save")]
- public void SaveExecute(object obj)
- {
- LogItems.Add(Sum.ToString());
- Sum = 0;
- }
- // Ну и что там еще у него есть
- }
* This source code was highlighted with Source Code Highlighter.С одной стороны явный минус в том, что появляются строки, в которых можно допустить ошибку. Но с другой стороны в презентере получается меньше кода (не надо заводить команду), и чисто теоретически можно объединить CanExecute для нескольких команд в один метод (просто навесив на него несколько атрибутов).
Комментариев нет:
Отправить комментарий