Dela via


x:Uid-direktiv

Tillhandahåller en unik identifierare för markeringselement. I många scenarier används den här unika identifieraren av XAML-lokaliseringsprocesser och verktyg.

XAML-attributanvändning

<object x:Uid="identifier"... />

XAML-värden

Värde Beskrivning
identifier En manuellt skapad eller autogenererad sträng som ska vara unik i en fil när den tolkas av en x:Uid konsument.

Anmärkningar

I [MS-XAML] definieras x:Uid som ett direktiv. Mer information finns i [MS-XAML] avsnitt 7.3.6.

x:Uid är diskret från x:Name både på grund av det angivna XAML-lokaliseringsscenariot och så att identifierare som används för lokalisering inte har några beroenden av programmeringsmodellens konsekvenser för x:Name. Dessutom styrs x:Name av XAML-namnskopet. men x:Uid styrs inte av något XAML-språkdefinierat begrepp för unik tillämpning. XAML-processorer i vid mening (processorer som inte ingår i lokaliseringsprocessen) förväntas inte framtvinga unikhet för x:Uid värden. Det ansvaret ligger konceptuellt på värdens upphovsman. Förväntningarna på unika x:Uid värden inom en enda XAML-källa är rimliga för konsumenter av värdena, till exempel dedikerade globaliseringsprocesser eller verktyg. Den typiska unikhetsmodellen är att x:Uid värden är unika i en XML-kodad fil som representerar XAML.

Verktyg som har betydande kunskaper om ett visst XAML-schema kan välja att tillämpa x:Uid endast för sanna localizable-strängar, i stället för för för alla fall där ett textsträngsvärde påträffas i markering.

Ramverk kan ange att en viss egenskap i objektmodellen ska vara ett alias för x:Uid genom att använda attributet UidPropertyAttribute på den definierande typen. Om ett ramverk anger en viss egenskap är det inte giltigt att ange både x:Uid och den aliaserade medlemmen i samma objekt. Om både x:Uid och den aliaserade medlemmen anges utlöser .NET XAML Services API vanligtvis XamlDuplicateMemberException för det här fallet.

WPF-användningsanteckningar

Mer information om rollen för x:Uid i WPF-lokaliseringsprocessen och i BAML-form av XAML finns i Globalisering för WPF eller Uid

Se även