ICommand Schnittstelle

Definition

Definiert einen Befehl.

public interface class ICommand
public interface ICommand
[System.ComponentModel.TypeConverter("System.Windows.Input.CommandConverter, PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
public interface ICommand
[System.ComponentModel.TypeConverter("System.Windows.Input.CommandConverter, PresentationFramework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
public interface ICommand
type ICommand = interface
[<System.ComponentModel.TypeConverter("System.Windows.Input.CommandConverter, PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")>]
type ICommand = interface
[<System.ComponentModel.TypeConverter("System.Windows.Input.CommandConverter, PresentationFramework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")>]
type ICommand = interface
Public Interface ICommand
Abgeleitet
Attribute

Hinweise

RoutedCommandund RoutedUICommand sind zwei Implementierungen der ICommand Schnittstelle in Windows Presentation Foundation (WPF).

ICommand in Windows-Runtime Apps

Die ICommand Schnittstelle ist der Codevertrag für Befehle, die in .NET für Windows-Runtime-Apps geschrieben werden. Diese Befehle bieten das Befehlsverhalten für UI-Elemente wie ein Windows-Runtime XAML Button und insbesondere ein AppBarButton. Wenn Sie Befehle für Windows-Runtime Apps definieren, verwenden Sie im Grunde dieselben Techniken, die Sie zum Definieren von Befehlen für eine .NET-App verwenden. Implementieren Sie den Befehl, indem Sie eine Klasse definieren, die die Execute Methode implementiert ICommand und speziell implementiert.

XAML für Windows-Runtime unterstützt x:Static nicht. Versuchen Sie daher nicht, die x:Static Markuperweiterung zu verwenden, wenn der Befehl aus Windows-Runtime XAML verwendet wird. Außerdem weist die Windows-Runtime keine vordefinierten Befehlsbibliotheken auf, daher gilt die hier gezeigte XAML-Syntax nicht wirklich für den Fall, in dem Sie die Schnittstelle implementieren und den Befehl für Windows-Runtime Verwendung definieren.

Verwendung von XAML-Attributen

<object property="predefinedCommandName"/>

- oder -

<object property="predefinedClassName.predefinedCommandName"/>

- oder -

<object property="{ customClassName.customCommandName}"/>

XAML-Werte

vordefinierteClassName
Eine der vordefinierten Befehlsklassen.

vordefinierterCommandName
Einer der vordefinierten Befehle.

customClassName
Eine benutzerdefinierte Klasse, die den benutzerdefinierten Befehl enthält. Benutzerdefinierte Klassen erfordern in der Regel eine xlmns Präfixzuordnung. Weitere Informationen finden Sie unter XAML-Namespaces und Namespacezuordnung für WPF-XAML.

customCommandName
Ein benutzerdefinierter Befehl.

Methoden

CanExecute(Object)

Definiert die Methode, die bestimmt, ob der Befehl im aktuellen Zustand ausgeführt werden kann.

Execute(Object)

Definiert die Methode, die aufgerufen wird, wenn der Befehl aufgerufen wird.

Ereignisse

CanExecuteChanged

Tritt ein, wenn Änderungen auftreten, die sich auf die Ausführung des Befehls auswirken.

Gilt für