x:Key-Attribut

Dient zum eindeutigen Identifizieren von Elementen, die als Ressourcen erstellt und referenziert werden und innerhalb eines ResourceDictionary-Elements vorhanden sind.

XAML-Attributsyntax

<ResourceDictionary>
  <object x:Key="stringKeyValue".../>
</ResourceDictionary>

XAML-Attributverwendung ("ResourceDictionary" implizit)

<object.Resources>
  <object x:Key="stringKeyValue".../>
</object.Resources>

XAML-Werte

BenennungBeschreibung

object

Beliebige Objekte, die freigegeben werden können. Weitere Informationen finden Sie unter ResourceDictionary- und XAML-Ressourcenverweise.

stringKeyValue

Eine als Schlüssel verwendete echte Zeichenfolge, die der XamlName-Grammatik entsprechen muss. Weitere Informationen erhalten Sie in "XamlName-Grammatik" unten.

 

XamlName-Grammatik

Im Anschluss finden Sie die maßgebende Grammatik für eine Zeichenfolge, die in der Windows-Runtime-XAML-Implementierung als Schlüssel verwendet wird:

XamlName ::= NameStartChar (NameChar)*
NameStartChar ::= LetterCharacter | '_'
NameChar ::= NameStartChar | DecimalDigit
LetterCharacter ::= ('a'-'z') | ('A'–'Z')
DecimalDigit ::= '0'-'9'
CombiningCharacter::= none
  • Die Zeichen sind auf den unteren ASCII-Bereich beschränkt – genauer: auf Groß- und Kleinbuchstaben des lateinischen Alphabets sowie auf Ziffern und den Unterstrich (_).
  • Der Unicode-Zeichenbereich wird nicht unterstützt.
  • Ein Name darf nicht mit einer Ziffer beginnen.

Hinweise

Zu den untergeordneten Elementen eines ResourceDictionary-Elements gehört im Allgemeinen ein x:Key-Attribut zum Angeben eines eindeutigen Schlüsselwerts innerhalb des Wörterbuchs. Die Eindeutigkeit von Schlüsseln wird beim Laden durch den XAML-Prozessor erzwungen. Nicht eindeutige x:Key-Werte haben XAML-Analyseausnahmen zur Folge. Auf Anforderung von StaticResource haben auch nicht aufgelöste Schlüssel Analyseausnahmen zur Folge.

Die Konzepte von x:Key und x:Name sind nicht identisch. x:Key wird ausschließlich in Ressourcenwörterbüchern verwendet. x:Name wird in allen XAML-Bereichen verwendet. Durch einen FindName-Aufruf mit einem Schlüsselwert wird keine Ressource mit Schlüssel abgerufen.

Beachten Sie, dass das ResourceDictionary-Objekt in der gezeigten impliziten Syntax dahingehend implizit ist, wie der XAML-Prozessor ein neues Objekt erzeugt, um eine Resources-Sammlung aufzufüllen.

Der Code zum Angeben von x:Key entspricht einem beliebigen Vorgang, in dem ein Schlüssel mit dem zugrunde liegenden ResourceDictionary verwendet wird. So entspricht beispielsweise ein im Markup für eine Ressource angewendeter x:Key dem Wert des key-Parameters Insert, wenn Sie die Ressource einem ResourceDictionary hinzufügen.

Ein Element in einem Ressourcenwörterbuch kann einen Wert für x:Key auslassen, wenn es sich um ein zielgerichtetes Style- oder ControlTemplate-Element handelt. In all diesen Fällen ist der implizite Schlüssel des Ressourcenelements der als Zeichenfolge interpretierte TargetType-Wert. Weitere Informationen finden Sie unter Schnellstart: Formatieren von Steuerelementen und ResourceDictionary- und XAML-Ressourcenverweise.

Verwandte Themen

ResourceDictionary- und XAML-Ressourcenverweise
x:Name attribute
Übersicht über XAML

 

 

Anzeigen:
© 2014 Microsoft. Alle Rechte vorbehalten.