Sdílet prostřednictvím


XamlSchemaContext Třída

Definice

Definuje opakovaně použitelný kontext pro interpretaci nebo mapování typů XAML a typy v sestaveních, které jsou základem.

public ref class XamlSchemaContext
public class XamlSchemaContext
type XamlSchemaContext = class
Public Class XamlSchemaContext
Dědičnost
XamlSchemaContext

Poznámky

Kontext schématu XAML poskytuje vrstvu abstrakce mezi schématem nebo slovníkem pro XAML a konkrétní implementací analyzátoru. Vložením konceptu kontextu schématu lze schéma použít s různými analyzátory XAML a kontext schématu vyplní podrobnosti potřebné k interakci s konkrétním analyzátorem XAML. Kontext schématu XAML například poskytuje rozhraní API dotazů, která souvisejí s koncepty XAML nebo vazbou CLR se systémem typů XAML. Kontext schématu XAML je také zodpovědný za údržbu seznamu sestavení načtených sestavení, která definují, kde analyzátor XAML hledá backingové typy.

Poznámky pro dědice

V systému AppDomainmůže být sdílen mezi XamlSchemaContext více volajícími, které zahrnují úplné i částečné důvěryhodné volající. Tato situace existuje v architekturách, jako je WPF, které poskytují částečný přístup důvěryhodnosti k načítání XAML pro části aplikačního modelu WPF. Výchozí XamlSchemaContext implementace poskytuje v tomto scénáři záruky tím, že zachová všechny jeho vlastnosti a nastavení neměnné. Odvozené implementace by také měly zvážit následující model neměnnosti vlastností a nastavení kontextu schématu XAML.

Základní XamlSchemaContext třída je navržena tak, aby vyhledávání neměla externě pozorovatelné vedlejší účinky. Typy, na které odkazují XamlSchemaContext rozhraní API v základní třídě, například XamlType nebo XamlMember, také nevygenerují žádné vedlejší účinky vyhledávání. Všechna data potřebná k určení schématu by měla být k dispozici z konstrukce a nastavení AppDomain. Všimněte si, že žádná vyhledávací rozhraní API nespoléhají na explicitně předávané služby; jejich vstup se spoléhá pouze na řetězcový vstup.

Základní XamlSchemaContext třída a XamlType XamlMember jsou všechny vlákna v jejich základních implementacích bezpečné. Pokud odvozujete nebo odvozujete XamlSchemaContext systémové třídy typu XAML, například XamlType a XamlMember , můžete zvolit, jestli se vaše třídy budou chovat jako bezpečné pro vlákna.

Konstruktory

XamlSchemaContext()

Inicializuje novou instanci XamlSchemaContext třídy.

XamlSchemaContext(IEnumerable<Assembly>)

Inicializuje novou instanci XamlSchemaContext třídy na základě sady referenčních sestavení.

XamlSchemaContext(IEnumerable<Assembly>, XamlSchemaContextSettings)

Inicializuje novou instanci XamlSchemaContext třídy na základě sady referenčních sestavení a objektu nastavení.

XamlSchemaContext(XamlSchemaContextSettings)

Inicializuje novou instanci XamlSchemaContext třídy na základě objektu nastavení.

Vlastnosti

FullyQualifyAssemblyNamesInClrNamespaces

Získá hodnotu, která určuje, zda schéma XAML a jeho kontext používají plně kvalifikované názvy sestavení v hodnotách vrácených vyhledávacím rozhraním API.

ReferenceAssemblies

Získá výčet sady referenčních sestavení pro kontext schématu XAML.

SupportMarkupExtensionsWithDuplicateArity

Získá hodnotu, která určuje, zda schéma XAML a jeho kontext podporují rozšíření značek, které mají dva konstruktory se stejnou arity (počet vstupních parametrů).

Metody

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
Finalize()

Poskytuje nestandardní Finalize implementaci, která nevolá Dispose.

GetAllXamlNamespaces()

Vyhledá sestavení, která jsou uložena tímto XamlSchemaContext způsobem, a vrátí sadu oborů názvů.

GetAllXamlTypes(String)

Vyhledá sestavení, která jsou uložena tímto XamlSchemaContext způsobem, a vrátí sadu typů ze zadaného oboru názvů XAML.

GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetPreferredPrefix(String)

Získá řetězec, který je hlášen jako upřednostňovaná předpona pro uživatele použít při mapování zadaného oboru názvů XAML.

GetType()

Type Získá aktuální instanci.

(Zděděno od Object)
GetValueConverter<TConverterBase>(Type, XamlType)

Vrátí převaděč hodnot, který lze převést na požadovaný targetType.

GetXamlDirective(String, String)

XamlDirective Vrátí hodnotu, která představuje direktivu, buď pro jazyk XAML, nebo pro konkrétní implementaci.

GetXamlType(String, String, XamlType[])

XamlType Vrátí hodnotu založenou na oboru názvů XAML a řetězci pro název typu. Tento podpis může zadat argumenty typu pro případy, kdy je požadovaný typ obecný typ.

GetXamlType(Type)

Vrátí hodnotu XamlType založenou na identifikátoru typu CLR.

GetXamlType(XamlTypeName)

Vrátí hodnotu XamlType založenou na názvu systémového typu XAML.

MemberwiseClone()

Vytvoří použádnou kopii aktuálního souboru Object.

(Zděděno od Object)
OnAssemblyResolve(String)

Volána, když operace používají tento kontext schématu k překladu sestavení, které je nutné k vyřešení oborů názvů XAML, které obsahuje.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
TryGetCompatibleXamlNamespace(String, String)

Vrátí úspěch nebo selhání požadavku pro kompatibilní obor názvů XAML. Úspěšný požadavek hlásí, že obor názvů XAML jako out parametr.

Platí pro