Freigeben über


InputBinding.CommandParameter Eigenschaft

Definition

Dient zum Abrufen oder Festlegen der befehlsspezifischen Daten für einen bestimmten Befehl.

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

Eigenschaftswert

Die befehlsspezifischen Daten. Der Standardwert lautet null.

Hinweise

Die CommandParameter Eigenschaft wird verwendet, um bestimmte Informationen an den Befehl zu übergeben, wenn sie ausgeführt wird. Der Typ der Daten wird durch den Befehl definiert. Viele Befehle erwarten keine Befehlsparameter; für diese Befehle werden alle übergebenen Befehlsparameter ignoriert.

Wenn es sich bei dem Befehl, dem eine Eingabebindung zugeordnet ist, um eine RoutedCommandEingabebindung handelt, wird die CommandParameter Eingabebindung an die RoutedCommand Handler über die ExecutedRoutedEventArgs Ereignisdaten CanExecuteRoutedEventArgs übergeben, wenn der Befehl verarbeitet wird.

Der Datentyp und zweck des Befehlsparameters werden für jeden Befehl unterschiedlich definiert und können sein null. Sie können die CommandEigenschaften CommandParameterund Eigenschaften CommandTarget an ein ICommand Objekt binden, das für ein Objekt definiert ist. Auf diese Weise können Sie einen benutzerdefinierten Befehl definieren und ihn benutzereingaben zuordnen. Weitere Informationen finden Sie im zweiten Beispiel in InputBinding.

Die Xaml-Verwendung wird von der InputBinding Klasse nicht unterstützt, da sie keinen öffentlichen parameterlosen Konstruktor verfügbar macht (sie verfügt über einen parameterlosen Konstruktor, ist aber geschützt). Abgeleitete Klassen können jedoch einen öffentlichen Konstruktor verfügbar machen und daher Eigenschaften festlegen, die von InputBinding der XAML-Verwendung geerbt werden. Zwei vorhandene InputBinding abgeleitete Klassen, die in XAML instanziiert werden können und Eigenschaften in XAML festlegen können, sind KeyBinding und MouseBinding.

Verwendung von XAML-Attributen

<inputBindingDerivedClass CommandParameter="commandParameterString"/>

XAML-Eigenschaftselementverwendung

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

XAML-Werte

inputBindingDerivedClass Eine abgeleitete Klasse, die InputBinding objektelementsyntax unterstützt, z KeyBinding . B. oder MouseBinding. Weitere Informationen finden Sie in der "Anmerkungen".

commandParameterString Eine Zeichenfolge, die von einem bestimmten Befehl verarbeitet wird. Zeichenfolgen sind der gängige Typ, der für Befehlsparameter verwendet wird, da sie einfach in XAML festgelegt werden können. Informationen zum erwarteten Zeichenfolgenformat und zum Zweck finden Sie in der Dokumentation für den bestimmten Befehl, dem die Eingabebindung zugeordnet ist. Viele Befehle erwarten keine Parameter.

commandParameterObject Ein Objekt, das von einem bestimmten Befehl verarbeitet wird. Alle vorhandenen WPF-Befehle verwenden Zeichenfolgen. Daher ist diese Eigenschaftselementsyntax nur für benutzerdefinierte Befehlsszenarien relevant. Um diese Syntax zu unterstützen, muss das commandParameterObject Objekt auch die Objektelementsyntax unterstützen (muss über einen öffentlichen parameterlosen Konstruktor verfügen).

Gilt für: