命令概述
DataGrid提供了一组直观的api,允许处理和/或覆盖其行为的不同方面。控件来控制组件的行为,可以通过命令
属性所注册的所有自定义命令的集合CommandService
财产。
CommmandService
DataGrid公开了一个CommandService
属性,该属性提供以下方法:
CanExecuteCommand(commanddid id,对象参数)
-确定该命令是否与指定的Id
,可以根据提供的参数执行。的自定义命令Id
添加到命令
集合时,它将优先于默认的(内置的)集合。CanExecuteDefaultCommand(commanddid id,对象参数)
-确定默认命令是否与指定的Id
,可以根据提供的参数执行。ExecuteCommand(commanddid id,对象参数)
-尝试查找与指定参数相关联的命令Id
,并执行其执行
例程,使用提供的参数。的自定义命令Id
添加到命令
集合时,它将优先于默认集合。ExecuteDefaultCommand(commanddid id,对象参数)
-执行与指定对象关联的默认命令(不查找用户定义的命令)Id
.
命令类型
DataGrid支持以下类型的命令:
DataGridCommand
DataGrid中的所有默认命令都派生自baseDataGridCommand
.将此命令视为与ui相关的命令,因为它在拥有该命令的DataGrid实例上操作。自定义命令优先于内置(默认)命令。
DataGridUserCommand
这个特定的命令类型在无状态和不确定ui的通用命令实现上为与ui相关的命令提供了一个抽象。DataGridUserCommand
公开以下属性:Id
获取或设置CommandId
与此命令关联的成员。命令
-获取或设置泛型ICommand
的实现视图模型
.EnableDefaultCommand
-获取或设置一个值,该值指示默认UI命令是否与指定的Id
将被执行。默认值为真正的
.
绑定到ViewModel中的命令
<网格xmlns:网格= "使用:Telerik.UI.Xaml.Controls。电网”xmlns: gridCommands = "使用:Telerik.UI.Xaml.Controls.Grid。命令">
CommandId枚举
类的成员标识所有预定义命令CommandId
枚举。这实际上是将命令实例与所属网格中的特定操作或例程关联起来的键。要注册自定义命令,可以继承DataGridCommand
类,并重写其CanExecute
而且执行
方法,或实例化DataGridUserCommand
实例,并设置其命令
财产。在这两种情况下,您都需要设置Id
属性,以便它能够正确地与所需的操作或事件相关联。
CommandId
支持以下枚举: