Creates an object graph from a source XAML node stream.
Assembly: System.Xaml (in System.Xaml.dll)
Initializes a new instance of the XamlReader.class using the XAML schema context that is used by a
Initializes a new instance of the XamlReader and its settings.class using the context that is used by a
Gets the last object that was written. Typically only called when the node stream is at its end and the object graph is complete.
Gets the INameScope service that maintains the XAML namescope for the absolute node root of the XAML object writer.
Gets the active XAML schema context.(Overrides XamlWriter.SchemaContext.)
Gets a value that reports whether a line information service should provide values and therefore, should also call the SetLineInfo method when it is relevant.
Resets all possible frames and clears the object graph.
Closes the XAML writer object.(Inherited from XamlWriter.)
Releases the unmanaged resources used by the XamlWriter.Dispose(Boolean).), and optionally, releases the managed resources. (Overrides
Determines whether the specified object is equal to the current object.(Inherited from Object.)
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.)
Serves as the default hash function. (Inherited from Object.)
|OnSetValue(Object, XamlMember, Object)|
Implements IXamlLineInfoConsumer.SetLineInfo and provides line information for exceptions.
Returns a string that represents the current object.(Inherited from Object.)
Closes the current member scope, and may write the value of the member scope while it closes. The new scope becomes the parent object scope of the member.(Overrides XamlWriter.WriteEndMember().)
Closes the current object scope in the writer. The new object scope becomes the parent member scope.(Overrides XamlWriter.WriteEndObject().)
Writes the conceptual StartObject into the object graph when the specified object is a default or implicit value of the parent property. The implicit value comes from information that is obtained from the XAML schema context and backing type information, instead of being specified as an object value in the input XAML node set.(Overrides XamlWriter.WriteGetObject().)
Defines a namespace declaration that applies to the next object scope or member scope.(Overrides XamlWriter.WriteNamespace(NamespaceDeclaration).)
Writes a new member node into the current object scope, and the scope becomes a new member scope.(Overrides XamlWriter.WriteStartMember(XamlMember).)
Writes an object node into the current scope, and sets the scope to a new object scope.(Overrides XamlWriter.WriteStartObject(XamlType).)
Writes a value to the current member scope. If the current scope is inside a collection, dictionary, or array object, the value should be added to the collection, dictionary, or array.(Overrides XamlWriter.WriteValue(Object).)
A WriteStartMember to write directives for initialization on an object that already exists as an instance, the default implementation throws an exception.has a concept of scope; that is, the maintains a conceptual point of reference in its output object graph. For a particular scope, certain operations might be valid or invalid, or produce a no-operation result. For example, if you call
A possible technique for tracking scope in a customis to align the node actions with a stack or frame class. The stack or frame can keep track of push and pop for each level of object-model depth that is entered or exited while the writes the object graph.
To support intermediate and advancedscenarios, the mechanism of writing an object graph provides callback entry points that occur when a commits or is about to commit certain actions. Some callbacks are enabled in the settings and are not specific to the object type or the member being written; however, callback information is often available in context or is in the event data that is sent through the callback. The following is a list of relevant callbacks:
The callback that is declared by BeforePropertiesHandler is invoked when the scope starts in an object, and occurs when the first WriteStartMember call to that object scope is made but not yet committed.
The default implementation of Dictionary<TKey, TValue> before the dictionary contents are added to the object graph. In this manner, a generic dictionary can be keyed at run time by objects and can match the relevant generic Add and indexer behavior. However, as implemented for the base , this capability exists only for object graph creation from the base Dictionary<TKey, TValue> class and not for derived classes of Dictionary<TKey, TValue>.supports type conversion on the constraints of a
Available since 4.0
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.