RoutedCommand Class

Definition

Defines a command that implements ICommand and is routed through the element tree.

public ref class RoutedCommand : System::Windows::Input::ICommand
[System.ComponentModel.TypeConverter("System.Windows.Input.CommandConverter, PresentationFramework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
public class RoutedCommand : System.Windows.Input.ICommand
[System.ComponentModel.TypeConverter("System.Windows.Input.CommandConverter, PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
public class RoutedCommand : System.Windows.Input.ICommand
[<System.ComponentModel.TypeConverter("System.Windows.Input.CommandConverter, PresentationFramework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")>]
type RoutedCommand = class
    interface ICommand
[<System.ComponentModel.TypeConverter("System.Windows.Input.CommandConverter, PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")>]
type RoutedCommand = class
    interface ICommand
Public Class RoutedCommand
Implements ICommand
Inheritance
RoutedCommand
Derived
Attributes
Implements

Remarks

The Execute and CanExecute methods on a RoutedCommand do not contain the application logic for the command as is the case with a typical ICommand, but rather, these methods raise events that traverse the element tree looking for an object with a CommandBinding. The event handlers attached to the CommandBinding contain the command logic.

The Execute method raises the PreviewExecuted and Executed events. The CanExecute method raises the PreviewCanExecute and CanExecute events.

XAML attribute usage

<object-property="predefined-command-name"/>
-or-
<object-property="predefined-class-name.predefined-command-name"/>
-or-
<object-property="{custom-class-name.custom-command-name}"/>

XAML values

predefined-class-name
One of the predefined command classes.

predefined-command-name
One of the predefined commands.

custom-class-name
A custom class that contains the custom command. Custom classes generally require an xlmns prefix mapping. For more information, see XAML Namespaces and Namespace Mapping for WPF XAML.

custom-command-name
A custom command.

Constructors

RoutedCommand()

Initializes a new instance of the RoutedCommand class.

RoutedCommand(String, Type)

Initializes a new instance of the RoutedCommand class with the specified name and owner type.

RoutedCommand(String, Type, InputGestureCollection)

Initializes a new instance of the RoutedCommand class with the specified name, owner type, and collection of gestures.

Properties

InputGestures

Gets the collection of InputGesture objects that are associated with this command.

Name

Gets the name of the command.

OwnerType

Gets the type that is registered with the command.

Methods

CanExecute(Object, IInputElement)

Determines whether this RoutedCommand can execute in its current state.

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
Execute(Object, IInputElement)

Executes the RoutedCommand on the current command target.

GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
ToString()

Returns a string that represents the current object.

(Inherited from Object)

Events

CanExecuteChanged

Occurs when changes to the command source are detected by the command manager. These changes often affect whether the command should execute on the current command target.

Explicit Interface Implementations

ICommand.CanExecute(Object)

For a description of this members, see CanExecute(Object).

ICommand.Execute(Object)

For a description of this members, see Execute(Object).

Applies to

See also