XamlSchemaContext Klass

Definition

Definierar en återanvändbar kontext för att tolka eller mappa XAML-typer och de typer i sammansättningarna som ligger till grund för dem.

public ref class XamlSchemaContext
public class XamlSchemaContext
type XamlSchemaContext = class
Public Class XamlSchemaContext
Arv
XamlSchemaContext

Kommentarer

En XAML-schemakontext ger ett abstraktionslager mellan ett schema eller ordförråd för XAML och en specifik parserimplementering. Genom att infoga begreppet schemakontext kan schemat användas med olika XAML-parsare, och schemakontexten fyller i den information som behövs för att interagera med en specifik XAML-parser. XAML-schemakontexten innehåller till exempel fråge-API:er som relaterar till XAML-begrepp eller CLR-bindningen till XAML-typsystemet. XAML-schemakontexten ansvarar också för att underhålla sammansättningslistan över inlästa sammansättningar, vilket definierar var en XAML-parser söker efter stödtyper.

Anteckningar till arvingar

I en AppDomainkan en XamlSchemaContext delas mellan flera anropare, som omfattar både fullständiga och partiella förtroendeanropare. Den här situationen finns i ramverk som WPF, som ger partiell åtkomst till XAML-inläsning för delar av WPF-programmodellen. Standardimplementeringen XamlSchemaContext ger skydd i det här scenariot genom att hålla alla dess egenskaper och inställningar oföränderliga. Härledda implementeringar bör också överväga att följa den här modellen med oföränderlighet för egenskaper och inställningar för en XAML-schemakontext.

Basklassen XamlSchemaContext är utformad så att sökningar inte har några externt observerbara biverkningar. De typer som refereras av XamlSchemaContext API:er i basklassen, till exempel XamlType eller XamlMember, ger också inga biverkningar från sökningar. Alla data som behövs för att göra en schemabestämning ska vara tillgängliga från konstruktionen och inställningarna för AppDomain. Observera att inga uppslags-API:er förlitar sig på uttryckligen skickade tjänster. deras indata är endast beroende av strängindata.

Basklassen XamlSchemaContext och XamlType och XamlMember är alla trådsäkra i sina basimplementeringar. Om du härleder från XamlSchemaContext eller härleder systemklasser av XAML-typ, till exempel XamlType och XamlMember , kan du välja om klasserna ska fungera som trådsäkra.

Konstruktorer

Name Description
XamlSchemaContext()

Initierar en ny instans av XamlSchemaContext klassen.

XamlSchemaContext(IEnumerable<Assembly>, XamlSchemaContextSettings)

Initierar en ny instans av XamlSchemaContext klassen, baserat på en uppsättning referenssammansättningar och ett inställningsobjekt.

XamlSchemaContext(IEnumerable<Assembly>)

Initierar en ny instans av XamlSchemaContext klassen, baserat på en uppsättning referenssammansättningar.

XamlSchemaContext(XamlSchemaContextSettings)

Initierar en ny instans av XamlSchemaContext klassen, baserat på ett inställningsobjekt.

Egenskaper

Name Description
FullyQualifyAssemblyNamesInClrNamespaces

Hämtar ett värde som anger om ett XAML-schema och dess kontext använder fullständigt kvalificerade sammansättningsnamn i de värden som returneras av uppslags-API:et.

ReferenceAssemblies

Hämtar en uppräkningsbar uppsättning referenssammansättningar för XAML-schemakontexten.

SupportMarkupExtensionsWithDuplicateArity

Hämtar ett värde som anger om ett XAML-schema och dess kontext stöder markeringstillägg som har två konstruktorer med samma aritet (antal indataparametrar).

Metoder

Name Description
Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
Finalize()

Tillhandahåller en icke-standardimplementering Finalize som inte anropar Dispose.

GetAllXamlNamespaces()

Söker i de sammansättningar som lagras av detta XamlSchemaContext och returnerar en uppsättning namnområden.

GetAllXamlTypes(String)

Söker i de sammansättningar som finns i detta XamlSchemaContext och returnerar en uppsättning typer från det angivna XAML-namnområdet.

GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetPreferredPrefix(String)

Hämtar en sträng som rapporteras som det föredragna prefixet för konsumenter som ska användas när de mappar det angivna XAML-namnområdet.

GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
GetValueConverter<TConverterBase>(Type, XamlType)

Returnerar en värdekonverterare som kan konvertera till den begärda targetType.

GetXamlDirective(String, String)

Returnerar ett XamlDirective värde som representerar ett direktiv, antingen för XAML-språket eller för en viss implementering.

GetXamlType(String, String, XamlType[])

Returnerar en XamlType som baseras på ett XAML-namnområde och en sträng för typnamnet. Den här signaturen kan ange typargumenten för fall där den önskade typen är en allmän typ.

GetXamlType(Type)

Returnerar en XamlType som baseras på en CLR-typidentifierare.

GetXamlType(XamlTypeName)

Returnerar ett XamlType som baseras på ett XAML-systemtypnamn.

MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
OnAssemblyResolve(String)

Anropas när åtgärder använder den här schemakontexten för att lösa en sammansättning som krävs för att matcha XAML-namnrymderna som den innehåller.

ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)
TryGetCompatibleXamlNamespace(String, String)

Returnerar lyckade eller misslyckade förfrågningar om ett kompatibelt XAML-namnområde. En lyckad begäran rapporterar att XAML-namnrymden är en out-parameter.

Gäller för