вторник, 29 мая 2012 г.

WPF. Используем Microsoft.Practices.Prism

Очень удобная штука Microsoft.Practices.Prism.
И так используем Microsoft.Practices.Prism.Commands. Он содержит CompositeCommandDelegateCommand,DelegateCommand<T> и DelegateCommandBase.
Использовать мы будем DelegateCommand.

Объявляем в нашем ViewModel поле типа DelegateCommand

        /// <summary>
        /// Загрузка
        /// </summary>
         private DelegateCommand loadExec;

и свойство


        /// <summary>
        /// Загрузка
        /// </summary>
         public DelegateCommand LoadExec
         {
             get { return this.loadExec; }
             set { this.loadExec=value; }
         }

Прописываем функцию

        /// <summary>
        /// Загрузка
        /// </summary>
         private void Load()
         {
             DoSomething();           
         }
И привязываем все это дело
    this.loadExec = new DelegateCommand(Load);

А в XAML добавляем
 <Button   Command="{Binding Path=LoadExec,UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" />

Ну вот теперь при нажатие на кнопку у нас будет выполнятся функция Load().


Комментариев нет:

Отправить комментарий