SimpleButton-Steuerelementvorlage
Bei einer Schaltfläche handelt es sich um ein ContentControl-Element, das auf ein Click-Ereignis reagiert. Sie können Inhalte innerhalb einer Schaltfläche in Microsoft Expression Blend platzieren, indem Sie auf die Schaltfläche doppelklicken und ein Element darin zeichnen. Wenn Sie mehrere Elemente innerhalb der Schaltfläche platzieren möchten, fügen Sie zuerst ein LayoutPanel-Element wie ein Raster- oder Canvaspanel ein. Eine Schaltfläche kann auch standardmäßig Text anzeigen. Klicken Sie mit der rechten Maustaste auf die Schaltfläche, und klicken Sie dann auf Text bearbeiten, um den Text zu bearbeiten.
Die Zeichenflächenansicht eines SimpleButton-Steuerelements
Aufgliederung der Steuerelementvorlage
Die SimpleButton-Steuerelementvorlage umfasst die folgenden Elemente:
Ein Rasterpanel, das verwendet wird, um die verschiedenen untergeordneten Elemente innerhalb der Schaltfläche aufzunehmen. Darüber hinaus erleichtert die Verwendung des Rasterpanels Ihnen das Hinzufügen von mehreren Elementen zur Vorlage. Wenn beispielsweise als Stammelement ein Border-Element verwendet wurde und Sie versucht haben, ein weiteres Element hinzuzufügen, würde das andere Element das ContentPresenter-Element ersetzen. Der Grund hierfür besteht darin, dass ein Border-Element nur ein einzelnes untergeordnetes Element aufnehmen kann.
Ein Border-Element, das verwendet wird, da es eine BorderThickness-Eigenschaft aufweist, die über eine Vorlage an die BorderThickness-Eigenschaft des Button-Steuerelements gebunden werden kann, auf das diese Vorlage angewendet wird.
Ein ContentPresenter-Element, das verwendet wird, um die Content-Eigenschaft der Schaltfläche anzuzeigen, auf die diese Vorlage angewendet wird. Dieses Element muss vorhanden sein, um den Inhalt der Schaltfläche anzuzeigen.
Objektansicht: Die grundlegenden Teile (Vorlage) eines SimpleButton-Steuerelements
Nach oben
Verwendete Eigenschaftsauslöser
Eigenschaftsauslöser in der Steuerelementvorlage werden verwendet, damit das Steuerelement auf Änderungen der Eigenschaften reagieren kann. Sie können im Interaktionspanel unter Auslöser auf die Elemente klicken, um die Eigenschaften anzuzeigen, die bei einem aktiven Auslöser geändert werden. Wenn beispielsweise in der SimpleButton-Vorlage die IsMouseOver-Eigenschaft den Wert True aufweist, ändert der Hintergrund des Border-Elements seine Farbe in die MouseOverBrush-Ressource.
Nach oben
Verwendete Pinsel
Die folgenden Pinselressourcen im Ressourcenverzeichnis SimpleStyles.xaml werden von der SimpleButton-Vorlage verwendet:
Die Background-Eigenschaft wird mit der NormalBrush-Ressource festgelegt, wenn kein Auslöser aktiv ist, mit der MouseOverBrush-Ressource, wenn für die IsMouseOver-Eigenschaft der Wert True gilt, mit der PressedBrush-Ressource, wenn für die IsPressed-Eigenschaft der Wert True gilt, und mit der DisabledBackgroundBrush-Ressource, wenn für die IsEnabled-Eigenschaft der Wert False gilt.
Die Border-Eigenschaft wird mit der NormalBorderBrush-Ressource festgelegt, wenn kein Auslöser aktiv ist, mit der DefaultBorderBrush-Ressource, wenn für die IsKeyboardFocused-Eigenschaft der Wert True gilt, und mit der DisabledBorderBrush-Ressource, wenn für die IsEnabled-Eigenschaft der Wert False gilt.
Die Foreground-Eigenschaft wird mit der DisabledForegroundBrush-Ressource festgelegt, wenn für die IsEnabled-Eigenschaft der Wert False gilt.
Nach oben
Bewährte Methoden und Designrichtlinien
Verwenden Sie ein Grid-Steuerelement als Stamm Ihrer Vorlage, wenn Sie davon ausgehen, dass ein Designer Ihrem Steuerelement weitere visuelle Elemente hinzufügt. Expression Blend sucht nach einem LayoutPanel-Element wie dem Grid-Steuerelement und legt es standardmäßig als aktives Element fest. Beim Hinzufügen neuer Elemente zur Zeichenfläche werden diese als untergeordnete Elemente in das LayoutPanel-Element eingefügt.
Eigenschaftsauslöser werden verwendet, um das Aussehen des Steuerelements je nach Benutzeraktionen (wie dem Klicken auf eine Schaltfläche) zu ändern. Eigenschaftsauslöser werden gegenüber Ereignisauslösern bevorzugt, da Sie zwei Ereignisauslöser (beispielsweise die Ereignisse MouseDown und MouseUp) benötigen, um dieselbe Aufgabe wie mit einem Eigenschaftsauslöser (beispielsweise für den IsPressed-Zustand) auszuführen. Ereignisauslöser können jedoch zum Starten einer Animationszeitachse für kompliziertere Steuerelemente verwendet werden.
Im Allgemeinen legen Sie eine Änderung des verwendeten Pinsels oder eine visuelle Änderung für die Zustände IsMouseOver, IsPressed und IsEnabled (False) fest. Außerdem können Sie den IsKeyboardFocused-Zustand verwenden, der üblicherweise zur Anzeige einer gepunkteten Linie um das Steuerelement herum verwendet wird.
Nach oben
Siehe auch
Konzepte
Weiterführende Themen: Erstellen von Schaltflächen mithilfe von Bitmapeffekten
Weiterführende Themen: Hinzufügen einer Animation zu einer Schaltfläche