ICommand Schnittstelle
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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:Static
nicht . 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. |