SimpleListBox-Steuerelementvorlage und SimpleListBoxItem-Steuerelementvorlage
Ein Listenfeld ist ein ItemsControl-Element in Form einer bildlauffähigen Liste. Sie können Listenfeldern von Microsoft Expression Blend Inhalte hinzufügen, indem Sie auf das Listenfeld doppelklicken und ein Element (zum Beispiel ein Rechteck) hineinzeichnen. Alternativ können Sie mit der rechten Maustaste unter Objekte und Zeitachsen auf das Listenfeld und dann auf SimpleListBoxItem hinzufügen klicken, um der Liste einzelne Elemente hinzuzufügen. Wenn Sie SimpleListBoxItem-Elemente aus einer Datenquelle auflisten möchten, klicken Sie auf ItemsSource an Daten binden. Wenn Sie der Auflistung einzelne Elemente hinzufügen, können Sie die Reihenfolge der Elemente ändern. Doppelklicken Sie hierzu auf das Listenfeld, um es als aktives Element festzulegen, und ziehen Sie dann die Elemente mit der Maus in die gewünschte Reihenfolge. Sie können mithilfe der SelectedIndex-Eigenschaft des Listenfelds festlegen, welches Element ausgewählt wird.
Zeichenflächenansicht eines SimpleListBox-Steuerelements mit zwei hinzugefügten Elementen
Aufgliederung der Steuerelementvorlage
Die SimpleListBox-Steuerelementvorlage umfasst folgende Elemente:
Ein Rasterpanel, das verwendet wird, um die verschiedenen untergeordneten Elemente innerhalb des Listenfelds aufzunehmen. Darüber hinaus erleichtert die Verwendung des Rasterpanels einem Designer einer Benutzeroberfläche (UI) das Hinzufügen von mehreren Elementen zur Vorlage.
Ein Border-Element, das verwendet wird, da es eine BorderThickness-Eigenschaft aufweist, die über eine Vorlage an die BorderThickness-Eigenschaft des ListBox-Steuerelements gebunden werden kann, auf das diese Vorlage angewendet wird.
Ein ScrollViewer-Element, das verwendet wird, um dem Benutzer der Anwendung das Ausführen des Bildlaufs zu ermöglichen, falls die Liste zu lang ist.
Ein StackPanel-Element, das im ScrollViewer-Element enthalten ist und die Elemente anordnet. Die IsItemsHost-Eigenschaft des StackPanel-Steuerelements ist auf True festgelegt, um das ScrollViewer-Element als das Element zu identifizieren, das die Elemente des Listenfeld-Steuerelements anzeigt, auf die diese Vorlage angewendet wird. Sie können das StackPanel-Element in ein anderes Panelelement ändern, indem Sie unter Objekte und Zeitachsen mit der rechten Maustaste auf das StackPanel-Element klicken und dann mit Layouttyp ändern ein anderes Panel auswählen, wie z. B. das UniformGrid-Element.
Die SimpleListBoxItem-Steuerelementvorlage umfasst die folgenden Elemente:
Ein Rasterpanel, das verwendet wird, um die verschiedenen untergeordneten Elemente innerhalb des Listenfeldelements aufzunehmen. Außerdem erleichtert die Verwendung eines Rasterpanels dem Designer das Hinzufügen von mehreren Elementen zur Vorlage.
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 sich innerhalb des Grid-Elements befindet und das automatisch an die Content-Eigenschaft des Elementsteuerelements gebunden ist, auf das diese Vorlage angewendet wird.
Objektansicht: Die grundlegenden Teile (Vorlage) eines SimpleComboBox-Steuerelements (links) und eines SimpleComboBoxItem-Steuerelements (rechts)
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 Vorlage für das Listenfeld die IsSelected-Eigenschaft eines Listenfeldelements den Wert True aufweist, wird die Hintergrundfarbe des Elements geändert. Wenn in der Vorlage für das Listenfeldelement die IsHighlighted-Eigenschaft den Wert True aufweist, wird die Background-Eigenschaft des Border-Elements geändert, um das im Listenfeld ausgewählte Element anzuzeigen.
Nach oben
Verwendete Pinsel
Die folgenden Pinselressourcen im Ressourcenverzeichnis SimpleStyles.xaml werden von den Vorlagen SimpleListBox und SimpleListBoxItem verwendet:
Die Background-Eigenschaft wird mit der WindowBackgroundBrush-Ressource festgelegt, wenn keine Auslöser aktiv sind, und mit der DisabledBackgroundBrush-Ressource, wenn die IsEnabled-Eigenschaft den Wert False aufweist.
Die BorderBrush-Eigenschaft wird mit der SolidBorderBrush-Ressource festgelegt, wenn keine Auslöser aktiv sind, und mit der DisabledBorderBrush-Ressource, wenn die IsEnabled-Eigenschaft den Wert False aufweist.
Wenn die SimpleListBox-Steuerelementvorlage mit Elementen aufgefüllt ist, welche die SimpleListBoxItem-Steuerelementvorlage verwenden, wird die Background-Eigenschaft des Elements mit der SelectedBackgroundBrush-Ressource festgelegt, wenn ein Element ausgewählt ist. Die Foreground-Eigenschaft wird mit der DisabledForegroundBrush-Ressource festgelegt, wenn die IsEnabled-Eigenschaft den Wert False aufweist.
Nach oben