CanExecuteRoutedEventArgs.Command Property

 

Gets the command associated with this event.

Namespace:   System.Windows.Input
Assembly:  PresentationCore (in PresentationCore.dll)

public ICommand Command { get; }

Property Value

Type: System.Windows.Input.ICommand

The command. Unless the command is a custom command, this is generally a RoutedCommand. There is no default value.

For more information on commanding, see the Commanding Overview.

The following example creates a CanExecuteRoutedEventHandler which handles multiple commands. If the Command property is equal to the Play command and the method IsPlaying returns false, CanExecute is set to true; otherwise, CanExecute is set to false. If the Command property is equal to the Stop command and the method IsPlaying returns true, CanExecute is set to true; otherwise, CanExecute is set to false.

private void CanExecuteDisplayCommand(object sender,
    CanExecuteRoutedEventArgs e)
{
    RoutedCommand command = e.Command as RoutedCommand;

    if (command != null)
    {
        if (command == MediaCommands.Play)
        {
            if (IsPlaying() == false)
            {
                e.CanExecute = true;
            }
            else
            {
                e.CanExecute = false;
            }
        }

        if (command == MediaCommands.Stop)
        {
            if (IsPlaying() == true)
            {
                e.CanExecute = true;
            }
            else
            {
                e.CanExecute = false;
            }
        }
    }
}

.NET Framework
Available since 3.0
Return to top
Show: