你的位置:首页 > 软件开发 > ASP.net > WPF学习08:MVVM 预备知识之COMMAND

WPF学习08:MVVM 预备知识之COMMAND

发布时间:2015-04-09 16:01:27
WPF内建的COMMAND是GOF 提出的23种设计模式中,命令模式的实现。 本文是WPF学习07:MVVM 预备知识之数据绑定的后续,将说明实现COMMAND的三个重点:ICommand CommandManager InputBindings ...

    WPF内建的COMMAND是GOF 提出的23种设计模式中,命令模式的实现。

    本文是WPF学习07:MVVM 预备知识之数据绑定的后续,将说明实现COMMAND的三个重点:ICommand  CommandManager InputBindings

 

COMMAND简介

    一般情况我们应用设计如下,一个个控件的各类Handler直接关心了如何实现具体的应用逻辑。

    WPF学习08:MVVM 预备知识之COMMAND

    借助COMMAND,我们将具体实现的应用逻辑放在COMMAND中实现,控件只需要绑定相应的COMMAND,而无需关心应用逻辑,从而实现界面与应用逻辑的解耦。

    WPF学习08:MVVM 预备知识之COMMAND

    WPF内建的COMMAND除了提供了逻辑解耦外,还可以用来实现控件使能管理、命令的历史记录(使操作可撤销)。

    本文将介绍如何在MVVM下运用COMMAND,以及控件的使能管理。历史记录功能将在下篇学习笔记中再介绍。


 

例子

    由CheckBox 管理Command是否可以被执行,Ctrl + A与按键被按均能执行同样的业务逻辑。

    WPF学习08:MVVM 预备知识之COMMANDWPF学习08:MVVM 预备知识之COMMANDWPF学习08:MVVM 预备知识之COMMAND

    XAML代码:

<Window x:Class="Commands.CommandBlog"    ="http://schemas.microsoft.com/get='_blank'>winfx/2006/xaml/presentation"    ="http://schemas.microsoft.com/winfx/2006/xaml"    Title="CommandBlog" Height="300" Width="300">  <Window.InputBindings>    <KeyBinding Key="A" Modifiers="Control" Command="{Binding NewFile}"></KeyBinding>  </Window.InputBindings>  <StackPanel Background="White">    <Button Command="{Binding NewFile}">New file</Button>    <CheckBox IsChecked="{Binding NewFileEnable}" HorizontalAlignment="Center">New file Function Enable</CheckBox>  </StackPanel></Window>

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:WPF学习08:MVVM 预备知识之COMMAND

关键词:wpf

wpf
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。