InputBinding.CommandParameter プロパティ

定義

特定のコマンドのコマンド固有のデータを取得または設定します。Gets or sets the command-specific data for a particular command.

public:
 property System::Object ^ CommandParameter { System::Object ^ get(); void set(System::Object ^ value); };
public object CommandParameter { get; set; }
member this.CommandParameter : obj with get, set
Public Property CommandParameter As Object

プロパティ値

Object

コマンド固有のデータ。The command-specific data. 既定では、 nullです。The default is null.

注釈

CommandParameter プロパティは、実行時に特定の情報をコマンドに渡すために使用されます。The CommandParameter property is used to pass specific information to the command when it is executed. データの型は、コマンドで定義されます。The type of the data is defined by the command. 多くのコマンドでは、コマンドパラメーターは想定されていません。これらのコマンドでは、渡されたコマンドパラメーターは無視されます。Many commands do not expect command parameters; for these commands, any command parameters passed will be ignored.

入力バインドに関連付けられているコマンドが RoutedCommandである場合は、コマンドの処理時に ExecutedRoutedEventArgs および CanExecuteRoutedEventArgs イベントデータを使用して、入力バインディングの CommandParameterRoutedCommand ハンドラーに渡されます。If the command that an input binding is associated with is a RoutedCommand, the CommandParameter of the input binding is passed to the RoutedCommand handlers through the ExecutedRoutedEventArgs and the CanExecuteRoutedEventArgs event data when the command is processed.

Command パラメーターのデータ型と目的は、各コマンドに対して異なる方法で定義され、nullできます。The data type and purpose of the command parameter are defined differently for each command and can be null. CommandCommandParameter、および CommandTarget プロパティを、オブジェクトで定義されている ICommand にバインドできます。You can bind the Command, CommandParameter, and CommandTarget properties to an ICommand that is defined on an object. これにより、カスタムコマンドを定義し、ユーザー入力に関連付けることができます。This enables you to define a custom command and associate it with user input. 詳細については、InputBindingの2番目の例を参照してください。For more information, see the second example in InputBinding.

InputBinding クラスは、パブリックなパラメーターなしのコンストラクターを公開しないため、XAML の使用をサポートしません (パラメーターなしのコンストラクターがありますが、保護されています)。The InputBinding class does not support XAML usage because it does not expose a public parameterless constructor (it has a parameterless constructor, but it is protected). ただし、派生クラスはパブリックコンストラクターを公開できるため、InputBinding から継承されたプロパティを XAML 使用法で設定できます。However, derived classes can expose a public constructor and therefore, can set properties that are inherited from InputBinding with XAML usage. XAML でインスタンス化でき、XAML でプロパティを設定できる2つの既存の InputBinding 派生クラスは KeyBindingMouseBindingです。Two existing InputBinding derived classes that can be instantiated in XAML and can set properties in XAML are KeyBinding and MouseBinding.

XAML 属性の使用XAML Attribute Usage

<inputBindingDerivedClass CommandParameter="commandParameterString"/>  

XAML プロパティ要素の使用XAML Property Element Usage

<inputBindingDerivedClass>  
  <inputBindingDerivedClass.CommandParameter>  
    <commandParameterObject/>  
  </inputBindingDerivedClass.CommandParameter>  
</inputBindingDerivedClass>  

XAML の値XAML Values

inputBindingDerivedClass
KeyBindingMouseBindingなどのオブジェクト要素構文をサポートする InputBinding の派生クラス。A derived class of InputBinding that supports object element syntax, such as KeyBinding or MouseBinding. 「解説」を参照してください。See Remarks.

commandParameterString
特定のコマンドによって処理される文字列。A string that is processed by a particular command. 文字列は、XAML で簡単に設定できるため、コマンドパラメーターに使用される共通の型です。Strings are the common type used for command parameters because they can be easily set in XAML. 期待される文字列形式とその目的については、入力バインディングが関連付けられている特定のコマンドに関するドキュメントを参照してください。For the expected string format and its purpose, see the documentation for the particular command that the input binding is associated with. 多くのコマンドではパラメーターは想定されていません。Many commands do not expect parameters.

commandParameterObject
特定のコマンドによって処理されるオブジェクト。An object that is processed by a particular command. 既存のすべての WPFWPF コマンドは、文字列を使用します。All existing WPFWPF commands use strings. したがって、このプロパティ要素の構文は、カスタムコマンドのシナリオにのみ関連します。Therefore, this property element syntax is only relevant for custom command scenarios. この構文をサポートするには、commandParameterObject オブジェクトでオブジェクト要素構文もサポートする必要があります (パラメーターなしのパブリックコンストラクターを持つ必要があります)。In order to support this syntax, the commandParameterObject object must also support object element syntax (must have a public parameterless constructor).

適用対象