标签:style blog http color 使用 strong io 2014
public interface ICommand { void Execute(object parameter); //定义在调用此命令时调用的方法。 bool CanExecute(object parameter); //此方法返回命令的状态,如果命令可用则返回true,否则返回false. event EventHandler CanExecuteChanged; //当命令状态改变时,引发该事件。 }
RoutedCommand类
当创建自己的命令时,不会直接实现ICommand接口,而是使用System.Windows.Input.RoutedCommand类。它是WPF中唯一实例了ICommand接口的类,它为事件冒泡和隧道添加了一些额外的基础结构。为了支持路由事件,RoutedCommand类私有地实现了ICommand接口,并且添加了ICommand接口方法的一些不同的版本,最明显的变化是,Execute()和CanExecute()方法使用了一个额外参数。代码示例如下:
public void Execute(object parameter, IInputElement target) { }
public bool CanExecute(object parameter, IInputElement target) { }
参数target是开始处理事件的元素,事件从target元素开始,然后冒泡至高层的容器,直到应用程序为了执行合适的任务而处理了事件。
RoutedCommand类还引入了三个属性:Name(命令名称)、OwnerType(包含命令的类)及InputGestures集合(可以被用于触发命令的按键或鼠标操作)。
标签:style blog http color 使用 strong io 2014
原文地址:http://www.cnblogs.com/jiao1855/p/3891229.html