CommandBinding.Executed CommandBinding.Executed CommandBinding.Executed CommandBinding.Executed Event

定義

この CommandBinding に関連付けられたコマンドが実行されたときに発生します。Occurs when the command associated with this CommandBinding executes.

public:
 event System::Windows::Input::ExecutedRoutedEventHandler ^ Executed;
public event System.Windows.Input.ExecutedRoutedEventHandler Executed;
member this.Executed : System.Windows.Input.ExecutedRoutedEventHandler 
Public Event Executed As ExecutedRoutedEventHandler 

次の例では、作成、CommandBindingマップされる、ExecutedRoutedEventHandlerCanExecuteRoutedEventArgsハンドラーをOpenコマンド。The following example creates a CommandBinding that maps an ExecutedRoutedEventHandler and a CanExecuteRoutedEventArgs handler to the Open command.

<Window.CommandBindings>
  <CommandBinding Command="ApplicationCommands.Open"
                  Executed="OpenCmdExecuted"
                  CanExecute="OpenCmdCanExecute"/>
</Window.CommandBindings>
// Creating CommandBinding and attaching an Executed and CanExecute handler
CommandBinding OpenCmdBinding = new CommandBinding(
    ApplicationCommands.Open,
    OpenCmdExecuted,
    OpenCmdCanExecute);

this.CommandBindings.Add(OpenCmdBinding);
' Creating CommandBinding and attaching an Executed and CanExecute handler
Dim OpenCmdBinding As New CommandBinding(ApplicationCommands.Open, AddressOf OpenCmdExecuted, AddressOf OpenCmdCanExecute)

Me.CommandBindings.Add(OpenCmdBinding)

次に示します、ExecutedRoutedEventHandler作成し、MessageBoxコマンドを実行するとします。The following shows the ExecutedRoutedEventHandler which creates a MessageBox when the command is executed.

void OpenCmdExecuted(object target, ExecutedRoutedEventArgs e)
{
    String command, targetobj;
    command = ((RoutedCommand)e.Command).Name;
    targetobj = ((FrameworkElement)target).Name;
    MessageBox.Show("The " + command +  " command has been invoked on target object " + targetobj);
}
Private Sub OpenCmdExecuted(ByVal sender As Object, ByVal e As ExecutedRoutedEventArgs)
    Dim command, targetobj As String
    command = CType(e.Command, RoutedCommand).Name
    targetobj = CType(sender, FrameworkElement).Name
    MessageBox.Show("The " + command + " command has been invoked on target object " + targetobj)
End Sub

注釈

ときに、RoutedCommandを実行する生成、PreviewExecutedコマンド ターゲットでのイベント。When a RoutedCommand executes, it raises the PreviewExecuted event on the command target. 場合、PreviewExecutedイベントが処理されない、Executedイベントは、コマンド ターゲットで発生します。If the PreviewExecuted event is not handled, the Executed event is raised on the command target. コマンド ターゲットがある場合、CommandBindingの特定のコマンド、ExecutedをハンドラーCommandBindingが呼び出されます。If the command target has a CommandBinding for the specific command, the Executed handler for that CommandBinding is called. コマンド ターゲットがあるない場合、CommandBinding特定のコマンド、Executedイベント バブル アップを持つ要素を検索する要素のツリーをCommandBindingコマンドに関連付けられています。If the command target does not have a CommandBinding for that specific command the Executed event bubbles up the element tree searching for an element that has a CommandBinding associated with the command. 場合、CommandBindingが見つからない、コマンドは処理されません。If a CommandBinding is not found, the command is not handled.

ルーティングされたイベント情報Routed Event Information

識別子フィールドです。Identifier field ExecutedEvent
ルーティング方法Routing strategy バブルBubbling
DelegateDelegate ExecutedRoutedEventHandler

適用対象

こちらもご覧ください