Style Style Style Style Class

Definition

Ermöglicht die gemeinsame Nutzung von Eigenschaften, Ressourcen und Ereignishandlern zwischen Instanzen eines Typs.Enables the sharing of properties, resources, and event handlers between instances of a type.

public ref class Style : System::Windows::Threading::DispatcherObject, System::Windows::Markup::IAddChild, System::Windows::Markup::INameScope, System::Windows::Markup::IQueryAmbient
[System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)]
[System.Windows.Markup.ContentProperty("Setters")]
[System.Windows.Markup.DictionaryKeyProperty("TargetType")]
public class Style : System.Windows.Threading.DispatcherObject, System.Windows.Markup.IAddChild, System.Windows.Markup.INameScope, System.Windows.Markup.IQueryAmbient
type Style = class
    inherit DispatcherObject
    interface INameScope
    interface IAddChild
    interface IQueryAmbient
Public Class Style
Inherits DispatcherObject
Implements IAddChild, INameScope, IQueryAmbient
Vererbung
Attribute
Implementiert

Beispiele

Das folgende Beispiel zeigt eine Style-Deklaration, die gelten die Background Eigenschaft eine Control.The following example shows a style declaration that will affect the Background property of a Control.

<Style x:Key="Style1">
  <Setter Property="Control.Background" Value="Yellow"/>
</Style>

Um die oben genannten Formatvorlage zuzuweisen, führen Sie folgende Schritte aus:To apply the above style, do the following:

<Label Content="Yellow Background" Style="{StaticResource Style1}" />

Sie können auch Stile auf alle Elemente eines bestimmten Typs anwenden, mit der TargetType Eigenschaft.You can also apply styles to all elements of a given type by using the TargetType property. Hinzufügen des Zieltyps den Stil bedeutet, dass Sie nicht mehr um die Eigenschaft vollständig zu qualifizieren, legen Sie mit, der ClassName.PropertyName Syntax.Adding the target type to the style means that you no longer have to fully qualify the property you are setting with the ClassName.PropertyName syntax. Das folgende Beispiel definiert einen Stil, die auf alle angewendet werden TextBlock Element.The following example defines a style that will be applied to every TextBlock element.

<Style TargetType="{x:Type TextBlock}">
  <Setter Property="FontFamily" Value="Segoe Black" />
  <Setter Property="HorizontalAlignment" Value="Center" />
  <Setter Property="FontSize" Value="12pt" />
  <Setter Property="Foreground" Value="#777777" />
</Style>

Hinweis

Viele WPFWPF Steuerelemente bestehen aus einer Kombination von anderen WPFWPF Steuerelemente, die daher einen Stil zu erstellen, die für alle Steuerelemente eines Typs gilt können große Auswirkungen haben.Many WPFWPF controls consist of a combination of other WPFWPF controls, so creating a style that applies to all controls of a type can have broad impact. Z. B., wenn Sie einen Stil erstellen, die TextBlock -Steuerelemente in eine Canvas, der Stil angewendet wird, um alle TextBlock Steuerelementen im Zeichenbereich, selbst wenn die TextBlock ist Teil eines anderen Steuerelements wie einer ListBox.For instance, if you create a style that targets the TextBlock controls in a Canvas, the style is applied to all TextBlock controls in the canvas, even if the TextBlock is part of another control, such as a ListBox.

Informationen zum Erweitern oder erben von der ein definiertes Format finden Sie in der BasedOn Seite.For information on how to extend or inherit from a defined style, see the BasedOn page.

Hinweise

Sie können festlegen, eine Style auf ein beliebiges Element, das von abgeleitet ist FrameworkElement oder FrameworkContentElement.You can set a Style on any element that derives from FrameworkElement or FrameworkContentElement. Deklariert ein Stil am häufigsten als Ressource in der Resources Abschnitt.A style is most commonly declared as a resource inside the Resources section. Da es sich bei Stilen um Ressourcen handelt, unterliegen sie die gleichen Bereichsregeln, die für alle Ressourcen gelten also, wenn Sie ein Stils wirkt sich auf deklarieren, wo er angewendet werden kann.Because styles are resources, they obey the same scoping rules that apply to all resources, so where you declare a style affects where it can be applied. Wenn Sie z. B. auf der Sie das Format im Stammelement Ihrer Anwendungsdefinition deklarieren XAMLXAML -Datei das Format kann eine beliebige Stelle in Ihrer Anwendung verwendet werden.If, for instance, you declare the style in the root element of your application definition XAMLXAML file, the style can be used anywhere in your application. Wenn Sie eine navigationsanwendung erstellen, und deklarieren den Stil in einer von der Anwendung XAMLXAML das Format-Dateien können verwendet werden, nur in der XAMLXAML Datei.If you are creating a navigation application and declare the style in one of the application's XAMLXAML files, the style can be used only in that XAMLXAML file. Weitere Informationen zu Bereichsregeln für Ressourcen finden Sie unter XAML-Ressourcen.For more information on scoping rules for resources, see XAML Resources.

Die Style-Deklaration besteht aus einem Style -Objekt, das eine Auflistung einer oder mehreren enthält Setter Objekte.The style declaration consists of a Style object that contains a collection of one or more Setter objects. Jede Setter besteht aus einem Property und Value.Each Setter consists of a Property and a Value. Die Eigenschaft ist der Name der Eigenschaft des Elements, der Stil zuweisen.The property is the name of the property of the element the style is to apply to. Nach der das Format als Ressource deklariert ist, können sie dann genau wie jede andere Ressource verwiesen werden.After the style is declared as a resource, it can then be referenced just like any other resource.

Hinweis

Wenn es mehr als ein Setter in der Setter-Auflistung mit dem gleichen Property Eigenschaftswert, der Setter, der deklariert wurde zuletzt verwendet wird.If there is more than one setter in the setter collection with the same Property property value, the setter that is declared last is used. Wenn Sie einen Wert für die gleiche Eigenschaft in einem Stil, und klicken Sie auf ein Element direkt festlegen, hat der Wert festgelegt für das Element direkt auf ähnliche Weise Vorrang vor.Similarly, if you set a value for the same property in a style and on an element directly, the value set on the element directly takes precedence.

Die Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) formatierungs-und Vorlagenmodells ermöglicht die Wartung und Freigabe von einiges als auch die Trennung von Darstellung und Logik.The Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) styling and templating model allows maintenance and sharing of a look as well as the separation of presentation and logic. Das Erstellen von Formaten und Vorlagen-Modell umfasst eine Suite mit Features, die Sie anpassen können Ihre UIUI.The styling and templating model includes a suite of features that enable you to customize your UIUI. Diese Suite von Features umfasst die Style -Klasse sowie die folgenden:This suite of features includes the Style class as well as the following:

Weitere Informationen finden Sie unter Erstellen von Formaten und Vorlagen.For more information, see Styling and Templating.

Konstruktoren

Style() Style() Style() Style()

Initialisiert eine neue Instanz der Style-Klasse.Initializes a new instance of the Style class.

Style(Type) Style(Type) Style(Type) Style(Type)

Initialisiert eine neue Instanz der Style-Klasse zur Verwendung für den angegebenen Type.Initializes a new instance of the Style class to use on the specified Type.

Style(Type, Style) Style(Type, Style) Style(Type, Style) Style(Type, Style)

Initialisiert eine neue Instanz der Style-Klasse zur Verwendung für den angegebenen Type und auf Grundlage des angegebenen Style.Initializes a new instance of the Style class to use on the specified Type and based on the specified Style.

Eigenschaften

BasedOn BasedOn BasedOn BasedOn

Ruft einen definierten Stil ab, der die Grundlage für den aktuellen Stil ist, oder legt diesen fest.Gets or sets a defined style that is the basis of the current style.

Dispatcher Dispatcher Dispatcher Dispatcher

Ruft die Dispatcher dies DispatcherObject zugeordnet ist.Gets the Dispatcher this DispatcherObject is associated with.

(Inherited from DispatcherObject)
IsSealed IsSealed IsSealed IsSealed

Ruft einen Wert ab, der angibt, ob der Stil schreibgeschützt ist und nicht geändert werden kann.Gets a value that indicates whether the style is read-only and cannot be changed.

Resources Resources Resources Resources

Ruft die Auflistung von Ressourcen ab, die innerhalb des Bereichs dieses Stils verwendet werden können, oder legt sie fest.Gets or sets the collection of resources that can be used within the scope of this style.

Setters Setters Setters Setters

Ruft eine Auflistung von Setter-Objekten und EventSetter-Objekten ab.Gets a collection of Setter and EventSetter objects.

TargetType TargetType TargetType TargetType

Ruft den Typ ab, für den dieser Stil vorgesehen ist, oder legt ihn fest.Gets or sets the type for which this style is intended.

Triggers Triggers Triggers Triggers

Ruft eine Auflistung von TriggerBase-Objekten ab, die Eigenschaftswerte auf Grundlage bestimmter Bedingungen anwenden.Gets a collection of TriggerBase objects that apply property values based on specified conditions.

Methoden

CheckAccess() CheckAccess() CheckAccess() CheckAccess()

Bestimmt, ob der aufrufende Thread den Zugriff auf diese kann DispatcherObject.Determines whether the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Gibt den Hashcode für diese Style zurück.Returns the hash code for this Style.

GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
RegisterName(String, Object) RegisterName(String, Object) RegisterName(String, Object) RegisterName(String, Object)

Registriert ein neues Name/Objekt-Paar im aktuellen Namescope.Registers a new name-object pair in the current namescope.

Seal() Seal() Seal() Seal()

Sperrt diesen Stil und alle Factorys und Trigger, damit sie nicht geändert werden können.Locks this style and all factories and triggers so they cannot be changed.

ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)
UnregisterName(String) UnregisterName(String) UnregisterName(String) UnregisterName(String)

Entfernt eine Name/Objekt-Zuordnung aus dem Namescope.Removes a name-object mapping from the namescope.

VerifyAccess() VerifyAccess() VerifyAccess() VerifyAccess()

Erzwingt, dass der aufrufende Thread den Zugriff auf diese DispatcherObject.Enforces that the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)

Explizite Schnittstellenimplementierungen

IAddChild.AddChild(Object) IAddChild.AddChild(Object) IAddChild.AddChild(Object) IAddChild.AddChild(Object)

Fügt ein untergeordnetes Objekt hinzu.Adds a child object.

IAddChild.AddText(String) IAddChild.AddText(String) IAddChild.AddText(String) IAddChild.AddText(String)

Fügt dem Objekt den Textinhalt eines Knotens hinzu.Adds the text content of a node to the object.

INameScope.FindName(String) INameScope.FindName(String) INameScope.FindName(String) INameScope.FindName(String)

Gibt ein Objekt zurück, das den bereitgestellten kennzeichnenden Namen aufweist.Returns an object that has the provided identifying name.

IQueryAmbient.IsAmbientPropertyAvailable(String) IQueryAmbient.IsAmbientPropertyAvailable(String) IQueryAmbient.IsAmbientPropertyAvailable(String) IQueryAmbient.IsAmbientPropertyAvailable(String)

Fragt ab, ob eine angegebene Ambient-Eigenschaft im aktuellen Bereich verfügbar ist.Queries whether a specified ambient property is available in the current scope.

ISealable.CanSeal ISealable.CanSeal ISealable.CanSeal ISealable.CanSeal
ISealable.IsSealed ISealable.IsSealed ISealable.IsSealed ISealable.IsSealed
ISealable.Seal() ISealable.Seal() ISealable.Seal() ISealable.Seal()

Gilt für:

Siehe auch