码迷,mamicode.com
首页 > 其他好文 > 详细

Prism BindableBase 和 Commands 的介绍

时间:2020-07-26 19:51:09      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:set   数据绑定   hellip   LLC   方法体   类继承   get   command   obj   

Prism.Mvvm: 主要包含 BindableBase 实现数据字段绑定,并有更新通知。

建议先建个基类继承 BindableBase ,然后其他类继承基类,及方便以后有公共属性或方法的使用,也可以方便替换 Prism.Mvvm .

代码例子如下:

  public  class BaseModelView: BindableBase

{

   ….

  private bool _isValid=true;

        public  bool IsValid

        {

            get

            {            

                return _isValid ;

            }

            set

            {

                if (value != _isValid)

                {

                    _isValid = value;

                    this.RaisePropertyChanged("IsValid");

                }

              

            }

        }

}

  Prism.Commands: 主要包含 DelegateCommand, CompositeCommand 。DelegateCommand 主要和  Command 配合使用。Command 可以绑定定义好的 DelegateCommand 。

DelegateCommand 定义如下:

 

方式1:

  public ICommand ClickCmd

        {

            get {

                return new DelegateCommand(() =>

                {

                    ……

                });

            }

        }

 

方式2:

 

public DelegateCommand<object> SubmitCommand { get; private set; }

this.SubmitCommand = new DelegateCommand<object>(this.Submit, this.CanSubmit);

  private void Submit(object parameter)

        {

 

// 方法体

}

 

private bool CanSubmit(object parameter)

        {

            Return true;

        }

  这是主要的方法定义

 

CompositeCommand:就是将多个 DelegateCommand 组合到一起调用:

private readonly CompositeCommand saveAllCommand;

public DelegateCommand<object> SaveProductsCommand { get; private set; }

public DelegateCommand<object> SaveOrdersCommand { get; private set; }

 

this.saveAllCommand = new CompositeCommand();         this.saveAllCommand.RegisterCommand(SaveProductsCommand);         this.saveAllCommand.RegisterCommand(SaveOrdersCommand);

 

有注册事件,就有取消事件:

saveAllCommand.UnregisterCommand(cmd);

 理解了 BindableBase 和 Command 就可以在小型的项目中使用 Prism.mvvm 了,就可以体会到数据绑定在wpf 中及其的方便。

Prism BindableBase 和 Commands 的介绍

标签:set   数据绑定   hellip   LLC   方法体   类继承   get   command   obj   

原文地址:https://www.cnblogs.com/tianya/p/Prism_BindableBase_Commands.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!