Wpf 自定义绑定Command和手动更新Command状态

来源:互联网 发布:gps端口检测工具下载 编辑:程序博客网 时间:2024/05/18 18:53

和大家分享下Command的简单知识。

一.自定义Command。类 MediaCommands、ApplicationCommands、NavigationCommands、ComponentCommands 和 EditingCommands中包含了一些常用的Command但是有时候还是需要自己定义一些不常用的。自定义Command的 .cs代码如下:

        #region 自定义Command        private static RoutedUICommand set;        public static RoutedUICommand Set        {            get { return set; }        }        static MainWindow()        {            InputGestureCollection inputSet = new InputGestureCollection();            inputSet.Add(new KeyGesture(Key.C, ModifierKeys.Control, "Ctrl+C"));            set = new RoutedUICommand("Set", "Set", typeof(MainWindow),inputSet);        }        #endregion
前台代码如下:

xmlns:loc="clr-namespace:WpfApplication1"<Button Command="loc:MainWindow.Set">自定义Command</Button>


WpfApplication1为命名空间,命令绑定到后台程序的代码具体如下:

            CommandBinding copyCommand = new CommandBinding();            copyCommand.Command = MainWindow.Set;            copyCommand.CanExecute += (s, e) => { e.CanExecute = true; };            copyCommand.Executed += (s, e) => { Console.WriteLine("OK"); };            this.CommandBindings.Add(copyCommand);

二.手动更新Command的状态,其实一行代码就可以更新状态,具体代码如下:

CommandManager.InvalidateRequerySuggested();

简单的Command应用就到这里,可能以后会更新Command的原理。

0 0
原创粉丝点击