Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.

ApplicationCommands.Print-Eigenschaft

Aktualisiert: November 2007

Ruft den Wert ab, der den Print-Befehl darstellt.

Namespace:  System.Windows.Input
Assembly:  PresentationCore (in PresentationCore.dll)
XMLNS für XAML: http://schemas.microsoft.com/winfx/xaml/presentation

public static RoutedUICommand Print { get; }
/** @property */
public static RoutedUICommand get_Print()

public static function get Print () : RoutedUICommand

<object property="Print"/>

Eigenschaftenwert

Typ: System.Windows.Input.RoutedUICommand
Der Befehl.

Standardwerte

Tastenkombination

STRG+P

Text der Benutzeroberfläche

Drucken

Dieser Befehl gibt an, dass das aktuelle Element gedruckt werden soll.

Es ist nicht zwangsläufig eine Implementierung des Befehls für ein angegebenes Objekt vorhanden. In vielen Fällen liegt die Implementierung für den Befehl in der Verantwortung des Anwendungsautors.

Das folgende Beispiel zeigt, wie Sie einen RoutedCommand in ein Control einbinden, das über eine integrierte Unterstützung für den Befehl verfügt. Ein vollständiges Beispiel, in dem Befehle in mehrere Quellen eingebunden werden, finden Sie unter Beispiel für das Erstellen eines benutzerdefinierten "RoutedCommand".

Windows Presentation Foundation (WPF) stellt eine Bibliothek mit allgemeinen Befehlen bereit, die Anwendungsprogrammierer häufig nutzen. Die Befehlsbibliothek enthält die folgenden Klassen: ApplicationCommands, ComponentCommands, NavigationCommands, MediaCommands und EditingCommands.

Die statischen RoutedCommand-Objekte, aus denen diese Klassen bestehen, stellen keine Befehlslogik bereit. Die Logik für den Befehl wird dem Befehl mithilfe von CommandBinding bereitgestellt. Einige Steuerelemente verfügen über integrierte CommandBindings für bestimmte Befehle. Mithilfe dieses Mechanismus kann die Semantik eines Befehls unverändert bleiben, während sich die eigentliche Implementierung ändern kann. Ein TextBox behandelt den Paste-Befehl zum Beispiel anders als ein Steuerelement, das zum Unterstützen von Bildern entworfen wurde, aber die grundlegende Bedeutung des Einfügens von Elementen bleibt gleich. Die Befehlslogik kann nicht vom Befehl bereitgestellt werden, sondern muss vom Steuerelement oder von der Anwendung bereitgestellt werden.

Viele Steuerelemente in WPF verfügen über eine integrierte Unterstützung für einige Befehle der Befehlsbibliothek. TextBox unterstützt zum Beispiel viele Bearbeitungsbefehle der Anwendung wie Paste, Copy, Cut, Redo und Undo. Anwendungsentwickler müssen keine speziellen Schritte ausführen, damit diese Befehle mit diesen Steuerelementen funktionieren. Wenn das TextBox das Befehlsziel ist, wenn der Befehl ausgeführt wird, behandelt es den Befehl mithilfe des CommandBinding-Elements, das in das Steuerelement integriert ist.

Im Folgenden wird gezeigt, wie Sie ein MenuItem als Befehlsquelle für den Paste-Befehl verwenden, wobei ein TextBox das Ziel des Befehls darstellt. Die gesamte Logik, die definiert, wie das TextBox das Einfügen durchführt, ist in das TextBox-Steuerelement integriert.

Es wird ein MenuItem erstellt, und seine Command-Eigenschaft wird auf den Paste-Befehl gesetzt. Das CommandTarget ist nicht explizit auf das TextBox-Objekt festgelegt. Wenn das CommandTarget nicht festgelegt ist, ist das Ziel für den Befehl das Element, das den Tastaturfokus besitzt. Wenn das Element, das den Tastaturfokus besitzt, den Paste-Befehl nicht unterstützt oder den Einfügebefehl momentan nicht ausführen kann (zum Beispiel wenn die Zwischenablage leer ist), ist das MenuItem abgeblendet.

<Window x:Class="SDKSamples.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MenuItemCommandTask"
    >
    <DockPanel>
      <Menu DockPanel.Dock="Top">
        <MenuItem Command="ApplicationCommands.Paste" Width="75" />
      </Menu>
      <TextBox BorderBrush="Black" BorderThickness="2" Margin="25"
               TextWrapping="Wrap">
        The MenuItem will not be enabled until
        this TextBox gets keyboard focus  
      </TextBox>
    </DockPanel>
</Window>


// Window1 constructor
public Window1()
{
    InitializeComponent();

    // Instantiating UIElements.
    DockPanel mainPanel = new DockPanel();
    Menu mainMenu = new Menu();
    MenuItem pasteMenuItem = new MenuItem();
    TextBox mainTextBox = new TextBox();

    // Associating the MenuItem with the Paste command.
    pasteMenuItem.Command = ApplicationCommands.Paste;

    // Setting properties on the TextBox.
    mainTextBox.Text =
        "The MenuItem will not be enabled until this TextBox receives keyboard focus.";
    mainTextBox.Margin = new Thickness(25);
    mainTextBox.BorderBrush = Brushes.Black;
    mainTextBox.BorderThickness = new Thickness(2);
    mainTextBox.TextWrapping = TextWrapping.Wrap;

    // Attaching UIElements to the Window.
    this.AddChild(mainPanel);
    mainMenu.Items.Add(pasteMenuItem);
    mainPanel.Children.Add(mainMenu);
    mainPanel.Children.Add(mainTextBox);

    // Defining DockPanel layout.
    DockPanel.SetDock(mainMenu, Dock.Top);
    DockPanel.SetDock(mainTextBox, Dock.Bottom);
}


Weiterer Code

Gewusst wie: Einbinden eines Befehls in ein Steuerelement ohne BefehlsunterstützungDas folgende Beispiel zeigt, wie Sie einen RoutedCommand in ein Control einbinden, das nicht über eine integrierte Unterstützung für den Befehl verfügt. Ein vollständiges Beispiel, in dem Befehle in mehrere Quellen eingebunden werden, finden Sie unter Beispiel für das Erstellen eines benutzerdefinierten "RoutedCommand".

Windows Vista

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

.NET Framework

Unterstützt in: 3.5, 3.0
Anzeigen: