Freigeben über


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 stellen das Befehlsverhalten für Benutzeroberflächenelemente bereit, z. B. eine Windows-Runtime XAML Button und insbesondere eine 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 würden. 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:Staticnicht . Versuchen Sie daher nicht, die x:Static Markuperweiterung zu verwenden, wenn der Befehl aus Windows-Runtime XAML verwendet wird. Außerdem verfügt der Windows-Runtime über keine vordefinierten Befehlsbibliotheken, sodass die hier gezeigte XAML-Syntax nicht wirklich für den Fall gilt, dass Sie die Schnittstelle implementieren und den Befehl für Windows-Runtime Verwendung definieren.

XAML-Attributsyntax

<object-property="predefined-command-name"/>
-or-
<object-property="predefined-class-name.predefined-command-name"/>
-or-
<object-property="{custom-class-name.custom-command-name}"/>

XAML-Werte

predefined-class-name
Eine der vordefinierten Befehlsklassen.

predefined-command-name
Einer der vordefinierten Befehle.

custom-class-name
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.

custom-command-name
Ein benutzerdefinierter Befehl.

Methoden

CanExecute(Object)

Bestimmt, ob der Befehl in seinem aktuellen Zustand ausgeführt werden kann.

Execute(Object)

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

Ereignisse

CanExecuteChanged

Tritt auf, wenn Änderungen vorgenommen werden, die sich darauf auswirken, ob der Befehl ausgeführt werden soll.

Gilt für: