XamlSchemaContext 類別

定義

定義可重複使用的內容,以解譯或對應 XAML 型別及其基礎組件中的型別。

public ref class XamlSchemaContext
public class XamlSchemaContext
type XamlSchemaContext = class
Public Class XamlSchemaContext
繼承
XamlSchemaContext

備註

XAML 架構內容提供 XAML 架構或詞彙與特定剖析器實作之間的抽象層。 藉由插入架構內容的概念,架構可以搭配不同的 XAML 剖析器使用,而架構內容會填入與特定 XAML 剖析器互動所需的詳細資料。 例如,XAML 架構內容會提供與 XAML 概念或 CLR 系結至 XAML 類型系統相關的查詢 API。 XAML 架構內容也負責維護已載入元件的元件清單,此清單會定義 XAML 剖析器尋找支援類型的位置。

給繼承者的注意事項

AppDomain在 中, XamlSchemaContext 可以在多個呼叫端之間共用,其中包括完整和部分信任呼叫端。 這種情況存在於 WPF 之類的架構中,可提供 WPF 應用程式模型部分之 XAML 載入的部分信任存取權。 預設 XamlSchemaContext 實作會藉由保留其所有屬性和設定不可變,在此案例中提供保護。 衍生實作也應該考慮遵循此模型,以取得 XAML 架構內容的屬性和設定不變性。

XamlSchemaContext 類的設計目的是要讓查閱沒有外部可觀察的副作用。 基類中的 API 所 XamlSchemaContext 參考的類型,例如 XamlTypeXamlMember ,也不會產生查閱的副作用。 進行架構判斷所需的所有資料都應該可從 的建構和設定 AppDomain 取得。 請注意,沒有查閱 API 依賴明確傳入的服務;其輸入只依賴字串輸入。

XamlSchemaContext 類和 XamlTypeXamlMember 其基底實作中所有安全線程。 如果您衍生自 XamlSchemaContext 或衍生的 XAML 類型系統類別,例如 XamlTypeXamlMember ,您可以選擇您的類別是否會以安全線程的方式運作。

建構函式

XamlSchemaContext()

初始化 XamlSchemaContext 類別的新執行個體。

XamlSchemaContext(IEnumerable<Assembly>)

根據參考組件集,初始化 XamlSchemaContext 類別的新執行個體。

XamlSchemaContext(IEnumerable<Assembly>, XamlSchemaContextSettings)

根據參考組件集和設定物件,初始化 XamlSchemaContext 類別的新執行個體。

XamlSchemaContext(XamlSchemaContextSettings)

根據設定物件,初始化 XamlSchemaContext 類別的新執行個體。

屬性

FullyQualifyAssemblyNamesInClrNamespaces

取得值,這個值指定 XAML 結構描述和其內容是否在查閱 API 所傳回的值中使用完整組件名稱。

ReferenceAssemblies

取得 XAML 結構描述內容之參考組件的可列舉集。

SupportMarkupExtensionsWithDuplicateArity

取得值,這個值指定 XAML 結構描述和其內容是否支援標記延伸,而這種標記延伸具有兩個包含相同 Arity (即輸入參數的數目) 的建構函式。

方法

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
Finalize()

提供不會叫用 Finalize 的非標準 Dispose 實作。

GetAllXamlNamespaces()

搜尋這個 XamlSchemaContext 所持有的組件,並傳回命名空間集。

GetAllXamlTypes(String)

搜尋這個 XamlSchemaContext 所持有的組件,並從指定的 XAML 命名空間傳回型別集。

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetPreferredPrefix(String)

取得字串,這個字串會報告為慣用的前置詞,供消費者在對應指定的 XAML 命名空間時使用。

GetType()

取得目前執行個體的 Type

(繼承來源 Object)
GetValueConverter<TConverterBase>(Type, XamlType)

傳回可轉換為所要求之 targetType 的值轉換器。

GetXamlDirective(String, String)

傳回 XamlDirective 值,這個值表示用於 XAML 語言或特定實作的指示詞。

GetXamlType(String, String, XamlType[])

傳回以 XAML 命名空間和型別名稱字串為基礎的 XamlType。 這個簽章可以在所需型別為泛型型別的情況下指定型別引數。

GetXamlType(Type)

傳回以 CLR 型別識別項為基礎的 XamlType

GetXamlType(XamlTypeName)

傳回以 XAML 系統型別名稱為基礎的 XamlType

MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
OnAssemblyResolve(String)

當作業為了要解析組件所含的 XAML 命名空間,而使用這個結構描述內容來解析該組件時呼叫。

ToString()

傳回代表目前物件的字串。

(繼承來源 Object)
TryGetCompatibleXamlNamespace(String, String)

傳回針對相容 XAML 命名空間的要求是否成功。 如果要求成功,則會將這個 XAML 命名空間報告為 out 參數。

適用於