XamlReader 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
針對會使用 XAML 輸入來產生 XAML 節點資料流的類別,提供基底定義。
public ref class XamlReader abstract : IDisposable
public abstract class XamlReader : IDisposable
type XamlReader = class
interface IDisposable
Public MustInherit Class XamlReader
Implements IDisposable
- 繼承
-
XamlReader
- 衍生
- 實作
備註
XamlReader 是抽象類別,不提供實作或定義,這些實作或定義具有所有成員的工作結果。 在 中 XamlReader 具有 實作的成員,會在該成員的備註中指出。 具體來說, XamlReader 有數個必須實作的抽象成員,以及數個虛擬成員。
虛擬成員的 ,而且 Skip 每個都 ReadSubtree 提供適用于大部分案例的預設實作。 不過, ReadSubtree 和 Skip 預設實作依賴實作 XAML 讀取器的其他預期行為;特別是,它們依賴 Read 覆寫。 Dispose 也是具有運作中預設實作的虛擬成員。
下列兩個類別是.NET Framework XAML 服務和 System.Xaml 元件中最相關的實際衍生類別:
XamlObjectReader,它會讀取物件圖形,例如執行時間應用程式的作用中物件圖形。
XamlXmlReader,它會使用將檔案載入為中繼協助程式類別的一般 XmlReader ,以 XML 文字檔的形式讀取 XAML。
其他架構的其他 XAML 讀取器包括 Baml2006Reader 和 XamlDebuggerXmlReader 。
XamlReader 不同于 XML 檔物件模型 (DOM) 和 XmlReader 設計原則,因為 XamlReader 沒有 Create
傳回基礎預設 XAML 讀取器實作的方法。 您必須改為呼叫特定衍生的 XAML 讀取器類別,方法是呼叫其建構函式或其他特定類別的協助程式 API 來具現化。
子樹讀取器
在大部分情況下,您會在特定衍生自 XamlReader 的特定 XAML 讀取器類別內容中呼叫 XamlReader API。 不過,在一個特定情況下,您會在不是公用且不是衍生自 XamlObjectReader 或 XamlXmlReader 的實際 XAML 讀取器實例上存取 XamlReader API。 這是當您呼叫 ReadSubtree 時,它會傳 XamlReader 回 實例。 在預設實作中, XamlReader 這個 API 傳回的 是內部類別。
針對子樹讀取取得的 具有 XamlReader 和 等 ReadNodeType API 的有效動作,而且這些動作是以父讀取器類別為基礎。 此設計可讓內部類別追蹤輸入子樹的框架層級。 作用中的子樹 XamlReader 可確保如果目前的節點位置超出子樹的界限,則特定子樹讀取器會報告檔案結尾或 null
目前節點。
特定 XamlReader API 包含子樹讀取器使用量的相關注意事項。
建構函式
XamlReader() |
初始化 XamlReader 類別。 |
屬性
IsDisposed |
取得是否已呼叫 Dispose(Boolean)。 |
IsEof |
在衍生類別中實作時取得值,這個值會報告讀取器位置是否在檔案結尾。 |
Member |
在衍生類別中實作時,如果讀取器位置在 StartMember 上,則取得讀取器位置上的目前成員。 |
Namespace |
在衍生類別中實作時,從目前節點取得 XAML 命名空間資訊。 |
NodeType |
在衍生類別中實作時,會取得目前節點的型別。 |
SchemaContext |
在衍生類別中實作時取得物件,這個物件會為資訊集提供 XAML 結構描述內容資訊。 |
Type |
在衍生類別中實作時,會取得目前節點的 XamlType。 |
Value |
在衍生類別中實作時,會取得目前節點的值。 |
方法
Close() |
關閉 XAML 節點資料流。 |
Dispose(Boolean) |
釋放 XamlReader 所使用的 Unmanaged 資源,並選擇性釋放 Managed 資源。 |
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
GetHashCode() |
做為預設雜湊函式。 (繼承來源 Object) |
GetType() |
取得目前執行個體的 Type。 (繼承來源 Object) |
MemberwiseClone() |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
Read() |
在衍生類別中實作時,會從來源提供下一個 XAML 節點 (如果有節點的話)。 |
ReadSubtree() |
傳回以目前 XamlReader 為基礎的 XamlReader,而傳回的 XamlReader 可用來逐一查看 XAML 節點結構的子樹狀結構。 |
Skip() |
略過目前節點,並使讀取器位置前進至下一個節點。 |
ToString() |
傳回代表目前物件的字串。 (繼承來源 Object) |
明確介面實作
IDisposable.Dispose() |
釋放 XamlReader 類別目前的執行個體所使用的全部資源。 |