WPF 中的路由命令模型可以分为四个主要概念:命令、命令源、命令目标以及命令绑定:
-
命令是要执行的操作。e.g ApplicationCommands.Copy、Cut、Paste
-
命令源是调用命令的对象。 e.g MenuItem、Button
-
命令目标是在其上执行命令的对象。 e.g 在TextBox上执行Cut
-
命令绑定是将命令逻辑映射到命令的对象。
一 命令:
命令类
|
示例命令
|
ApplicationCommands
|
Close、Cut、Copy、Paste、Save、Print
|
NavigationCommands
|
BrowseForward、BrowseBack、Zoom、Search
|
EditingCommands
|
AlignXXX、MoveXXX、SelectXXX
|
MediaCommands
|
Play、Pause、NextTrack、IncreaseVolume、Record、Stop
|
ComponentCommands
|
MoveXXX、SelectXXX、ScrollXXX、ExtendSelectionXXX
|
二、命令源
1、直接使用控件的Command属性绑定命令:
e.g:
<
Button
Command
="ApplicationCommands.Copy"
/>
2、绑定快捷键
<
KeyBinding
Command
="ApplicationCommands.Open"
Key
="F2"
Modifiers
="Control"
/>
三、命令目标
即就是命令执行的对象。此时必须用 CommandTarget
属性实现。
e.g :
<
MenuItem
x:Name
="menuPaste"
Header
="Paste"
Command
="ApplicationCommands.Paste"
CommandTarget
="{Binding ElementName=txtMain}"
/>
四、命令绑定
使用<keyBinding>将命令绑定。
e.g :
<
Window.InputBindings
>
<
KeyBinding
Command
="ApplicationCommands.Save"
Key
="F3"
Modifiers
="Control"
/>
</
Window.InputBindings
>
<
Window.CommandBindings
>
<
CommandBinding
Command
="ApplicationCommands.Save"
CanExecute
="CommandBinding_Save_CanExecute"
Executed
="CommandBinding_Save_Executed"
/>
</
Window.CommandBindings
>
分享到:
相关推荐
所以准确地说WPF命令应该是路由命令 另外,WPF命令除了使命令源和命令目标分割的优点外,它还具有另一个优点: 使得控件的启用状态和相应的命令状态保持同步,即命令被禁用时,此时绑定命令的控件也会被禁用。 1. ...
**WPF编程宝典——C# 2010版** Windows Presentation Foundation(WPF)是.NET Framework的一个重要组成部分,由Microsoft开发,旨在提供统一的编程模型、丰富的用户体验以及跨平台的能力。本资源专为使用C# 2010...
《WPF编程宝典——使用C# 2012和.NET 4.5(第4版)源码》是一部深入探讨Windows Presentation Foundation (WPF) 技术的专业书籍,结合C# 2012编程语言和.NET Framework 4.5平台,为开发者提供了丰富的实践案例和详细...
《WPF编程宝典——C# 2010版》是一本专注于Windows Presentation Foundation(WPF)技术的深入教程,结合C# 2010编程语言进行讲解。WPF是微软.NET Framework的一部分,旨在提供一个统一的编程模型,用于构建富客户端...
### WPF学习笔记——主流桌面应用开发技术 #### 一、WPF简介 **Windows Presentation Foundation (WPF)** 是微软推出的下一代图形用户界面系统,它主要用于构建具备卓越视觉体验的Windows客户端应用程序。WPF不仅...
此外,可能还会涉及命令、事件和路由事件,这些都是WPF中处理用户输入和应用逻辑的关键。 **第五章:资源、样式和模板** 资源是WPF中复用UI元素和设置的关键,可以显著提高代码的可维护性。样式定义了控件的默认...
8. **事件处理**:WPF的事件模型基于依赖属性,提供简便的事件订阅和处理方式,支持事件路由和事件参数。 9. **多线程支持**:WPF提供了Dispatcher机制,使得在UI线程外执行操作变得可能,避免了UI的阻塞,提高了...
8. **路由事件和命令**:学习如何使用路由事件传播事件,以及如何实现MVVM(Model-View-ViewModel)模式中的命令。 9. **动画和转换**:理解动画和转换的概念,如何为用户界面添加动态效果。 10. **布局系统**:...
2. **RoutedCommand和 RelayCommand**:RoutedCommand是一种内置的命令类型,支持事件路由;RelayCommand是MVVM框架中常见的命令实现,它封装了ICommand并提供执行逻辑的委托。 3. **命令绑定**:在XAML中,可以...
《WPF编程宝典——使用C# 2008和.NET 3.5》这本书是专门为想要深入学习Windows Presentation Foundation(WPF)技术的开发者准备的。WPF是Microsoft .NET Framework 3.5中的一个重要组成部分,它提供了一种全新的...
本教程将探讨WPF Control的核心概念,包括其与Win32、MFC、WinForm的比较,以及WPF的路由事件模型、渲染模型、内容模型、MVC模型,还有常用的WPF控件,以及用户控件和自定义控件的差异。 ### 1. WPF Control 与 Win...
本资料《WPF编程宝典——使用C# 2012和.NET 4.5(第4版)》将深入介绍WPF的基础知识和应用技巧,是WPF新手的理想入门读物。 1. **XAML语言基础** XAML(Extensible Application Markup Language)是WPF的核心,...
首先,我们要理解WPF中的核心概念——XAML(Extensible Application Markup Language)。XAML是一种标记语言,用于声明式地定义用户界面。在WPF中,XAML用于描述UI元素、它们的属性和事件处理程序,这使得UI设计变得...
《Illustrated WPF》是一本专为C#程序员设计的书籍,旨在帮助读者快速掌握Microsoft的最新技术——Windows Presentation Foundation(简称WPF)。本书由Daniel M. Solis撰写并绘制插图,采用了一种直观且精炼的方式...
**WPF编程宝典——使用C#2012和.NET4.5源码** Windows Presentation Foundation(WPF)是Microsoft开发的一种用户界面框架,它为构建桌面应用程序提供了丰富的功能和设计灵活性。在《WPF编程宝典》一书中,作者深入...
除了传统的事件处理方法,WPF还引入了事件路由和命令模式,使得事件处理更加灵活且符合MVVM(Model-View-ViewModel)设计模式。 至于文档处理,WPF支持流内容和固定内容两种模式,可以创建和显示复杂的文档,如报告...
12. **命令和路由事件**:命令模式是WPF中处理用户操作的一种常见方式,它将用户界面与业务逻辑解耦。路由事件则是可以在整个元素树中传播的事件,允许子元素响应父元素的事件。 通过分析和研究WPF揭秘_code中的...
**WPF编程宝典——C# 2010版** Windows Presentation Foundation(WPF)是微软.NET Framework的一部分,提供了一种强大的用户界面框架,用于构建桌面应用程序。它结合了丰富的图形、多媒体、数据绑定、样式和模板等...