XamlReader.LoadAsync Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Liest XAML-Markup und gibt ein Objekt zurück, das dem Stamm des angegebenen Markups entspricht.
Überlädt
| Name | Beschreibung |
|---|---|
| LoadAsync(Stream, ParserContext, Boolean) | |
| LoadAsync(XmlReader, Boolean) | |
| LoadAsync(Stream, ParserContext) |
Liest die XAML-Eingabe in der angegebenen Stream Und gibt den Stamm der entsprechenden Objektstruktur zurück. |
| LoadAsync(Stream) |
Liest die XAML-Eingabe in der angegebenen Stream Und gibt den Stamm der entsprechenden Objektstruktur zurück. |
| LoadAsync(XmlReader) |
Liest die XAML-Eingabe in der angegebenen XmlReader Und gibt den Stamm der entsprechenden Objektstruktur zurück. |
| LoadAsync(Stream, Boolean) |
LoadAsync(Stream, ParserContext, Boolean)
public:
System::Object ^ LoadAsync(System::IO::Stream ^ stream, System::Windows::Markup::ParserContext ^ parserContext, bool useRestrictiveXamlReader);
public object LoadAsync(System.IO.Stream stream, System.Windows.Markup.ParserContext parserContext, bool useRestrictiveXamlReader);
member this.LoadAsync : System.IO.Stream * System.Windows.Markup.ParserContext * bool -> obj
Public Function LoadAsync (stream As Stream, parserContext As ParserContext, useRestrictiveXamlReader As Boolean) As Object
Parameter
- stream
- Stream
- parserContext
- ParserContext
- useRestrictiveXamlReader
- Boolean
Gibt zurück
Hinweise
Diese Methode speichert in der Aufgabe, die alle Nicht-Verwendungs-Ausnahmen zurückgibt, die das synchrone Gegenstück der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Verwendungsausnahmen, z. B. ArgumentException, werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie in den von Load(Stream, ParserContext, Boolean).
Gilt für:
LoadAsync(XmlReader, Boolean)
public:
System::Object ^ LoadAsync(System::Xml::XmlReader ^ reader, bool useRestrictiveXamlReader);
public object LoadAsync(System.Xml.XmlReader reader, bool useRestrictiveXamlReader);
member this.LoadAsync : System.Xml.XmlReader * bool -> obj
Public Function LoadAsync (reader As XmlReader, useRestrictiveXamlReader As Boolean) As Object
Parameter
- reader
- XmlReader
- useRestrictiveXamlReader
- Boolean
Gibt zurück
Hinweise
Diese Methode speichert in der Aufgabe, die alle Nicht-Verwendungs-Ausnahmen zurückgibt, die das synchrone Gegenstück der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Verwendungsausnahmen, z. B. ArgumentException, werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie in den von Load(XmlReader, Boolean).
Gilt für:
LoadAsync(Stream, ParserContext)
Liest die XAML-Eingabe in der angegebenen Stream Und gibt den Stamm der entsprechenden Objektstruktur zurück.
public:
System::Object ^ LoadAsync(System::IO::Stream ^ stream, System::Windows::Markup::ParserContext ^ parserContext);
public object LoadAsync(System.IO.Stream stream, System.Windows.Markup.ParserContext parserContext);
member this.LoadAsync : System.IO.Stream * System.Windows.Markup.ParserContext -> obj
Public Function LoadAsync (stream As Stream, parserContext As ParserContext) As Object
Parameter
- stream
- Stream
Ein Stream, der die zu ladende XAML-Eingabe enthält.
- parserContext
- ParserContext
Kontextinformationen, die vom Parser verwendet werden.
Gibt zurück
Der Stamm der erstellten Objektstruktur.
Ausnahmen
stream ist null.
Mehrere Ladevorgänge werden gleichzeitig mit demselben XamlReaderausgeführt.
Hinweise
Ein asynchroner XAML-Ladevorgang gibt zunächst ein Objekt zurück, das rein das Stammobjekt ist. Asynchron wird die XAML-Analyse fortgesetzt, und alle untergeordneten Objekte werden unter dem Stamm ausgefüllt. Dies ist im Gegensatz zum typischen WPF XAML-Verarbeitungsverhalten und dessen Interaktion mit WPF Konzepten der Objektlebensdauer. In der typischen (nicht asynchronen) Interaktion werden alle Eigenschaften eines Objekts einschließlich aller untergeordneten Auflistungen ausgefüllt, bevor ein Element zurückgegeben und als geladen gemeldet wird. Dieses Verhalten entspricht einer Bottom-up-Methodik zum Erstellen der Struktur, in der das Stammobjekt das letzte Objekt ist, das verfügbar werden soll.
In der Regel würden Sie das zurückgegebene Objekt an einer bestimmten Stelle in der Objektstruktur Ihrer Anwendung zuweisen, mit dem Wissen, dass Inhalte möglicherweise noch ausgefüllt werden und zu inkrementellen Layoutaktualisierungen führen können, wenn der gesamte Inhalt als Teil der Benutzeroberfläche verfügbar gemacht wird. Aus diesem Grund ist es typisch, alle asynchron geladenen Objekte aus XAML zu isolieren oder zu virtualisieren und anwendungsspezifische Logik oder Anwendungsstatus zu verwenden, um zu benachrichtigen, wann LoadCompleted behandelt wird.
Damit LoadAsync Markup asynchron geladen werden kann, muss das Stammelement im XAML-Markup das Attribut und den Wert x:SynchronousMode="Async"enthalten. Der Wert wird als Groß-/Kleinschreibung behandelt. Wenn der XAML-Markupstamm nicht enthält x:SynchronousMode="Async", wird keine Ausnahme ausgelöst, und der Aufruf wird als synchrones Laden verarbeitet (siehe Load(Stream, ParserContext)).
Pro Instanz der XamlReader Klasse kann jeweils nur ein asynchroner Ladevorgang ausgeführt werden. Wenn mehrere asynchrone Vorgänge in derselben Instanz der XamlReader Klasse ausgelöst werden, wird ein InvalidOperationException Fehler ausgelöst.
Diese Methode speichert in der Aufgabe, die alle Nicht-Verwendungs-Ausnahmen zurückgibt, die das synchrone Gegenstück der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Verwendungsausnahmen, z. B. ArgumentException, werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie in den von Load(Stream, ParserContext).
Weitere Informationen
Gilt für:
LoadAsync(Stream)
Liest die XAML-Eingabe in der angegebenen Stream Und gibt den Stamm der entsprechenden Objektstruktur zurück.
public:
System::Object ^ LoadAsync(System::IO::Stream ^ stream);
public object LoadAsync(System.IO.Stream stream);
member this.LoadAsync : System.IO.Stream -> obj
Public Function LoadAsync (stream As Stream) As Object
Parameter
- stream
- Stream
Der Stream, der die zu ladende XAML-Eingabe enthält.
Gibt zurück
Das Objekt, das der Stamm der erstellten Objektstruktur ist.
Ausnahmen
stream ist null.
Mehrere Ladevorgänge stehen gleichzeitig mit demselben XamlReaderaus.
Hinweise
Ein asynchroner XAML-Ladevorgang gibt zunächst ein Objekt zurück, das rein das Stammobjekt ist. Asynchron wird die XAML-Analyse fortgesetzt, und alle untergeordneten Objekte werden unter dem Stamm ausgefüllt. Dies ist im Gegensatz zum typischen WPF XAML-Verarbeitungsverhalten und dessen Interaktion mit WPF Konzepten der Objektlebensdauer. In der typischen (nicht asynchronen) Interaktion werden alle Eigenschaften eines Objekts einschließlich aller untergeordneten Auflistungen ausgefüllt, bevor ein Element zurückgegeben und als geladen gemeldet wird. Dieses Verhalten entspricht einer Bottom-up-Methodik zum Erstellen der Struktur, in der das Stammobjekt das letzte Objekt ist, das verfügbar werden soll.
In der Regel würden Sie das zurückgegebene Objekt an eine Stelle in der Objektstruktur Ihrer WPF Anwendung zuweisen, mit dem Wissen, dass Inhalte möglicherweise noch ausgefüllt werden und zu inkrementellen Layoutaktualisierungen führen können, wenn der gesamte Inhalt als Teil der Benutzeroberfläche verfügbar gemacht wird. Aus diesem Grund ist es typisch, alle asynchron geladenen Objekte aus XAML zu isolieren oder zu virtualisieren und anwendungsspezifische Logik oder Anwendungsstatus zu verwenden, um zu benachrichtigen, wann LoadCompleted behandelt wird.
Damit LoadAsync XAML-Eingabe asynchron geladen werden kann, muss das Stammelement in der XAML-Eingabe das Attribut und den Wert x:SynchronousMode="Async"enthalten. Der Wert wird als Groß-/Kleinschreibung behandelt. Wenn der XAML-Eingabestamm nicht enthält x:SynchronousMode="Async", wird keine Ausnahme ausgelöst, und der Aufruf wird als synchrones Laden verarbeitet (siehe Load(Stream)).
Pro Instanz der XamlReader Klasse kann jeweils nur ein asynchroner Ladevorgang ausgeführt werden. Wenn mehrere asynchrone Vorgänge in derselben Instanz der XamlReader Klasse ausgelöst werden, wird ein InvalidOperationException Fehler ausgelöst.
Diese Methode speichert in der Aufgabe, die alle Nicht-Verwendungs-Ausnahmen zurückgibt, die das synchrone Gegenstück der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Verwendungsausnahmen, z. B. ArgumentException, werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie in den von Load(Stream).
Weitere Informationen
Gilt für:
LoadAsync(XmlReader)
Liest die XAML-Eingabe in der angegebenen XmlReader Und gibt den Stamm der entsprechenden Objektstruktur zurück.
public:
System::Object ^ LoadAsync(System::Xml::XmlReader ^ reader);
public object LoadAsync(System.Xml.XmlReader reader);
member this.LoadAsync : System.Xml.XmlReader -> obj
Public Function LoadAsync (reader As XmlReader) As Object
Parameter
Gibt zurück
Der Stamm der erstellten Objektstruktur.
Ausnahmen
reader ist null.
Mehrere Ladevorgänge werden gleichzeitig mit demselben XamlReaderausgeführt.
Hinweise
Ein asynchroner XAML-Ladevorgang gibt zunächst ein Objekt zurück, das rein das Stammobjekt ist. Asynchron wird die XAML-Analyse fortgesetzt, und alle untergeordneten Objekte werden unter dem Stamm ausgefüllt. Dies ist im Gegensatz zum typischen WPF XAML-Verarbeitungsverhalten und dessen Interaktion mit WPF Konzepten der Objektlebensdauer. In der typischen (nicht asynchronen) Interaktion werden alle Eigenschaften eines Objekts einschließlich aller untergeordneten Auflistungen ausgefüllt, bevor ein Element zurückgegeben und als geladen gemeldet wird. Dieses Verhalten entspricht einer Bottom-up-Methodik zum Erstellen der Struktur, in der das Stammobjekt das letzte Objekt ist, das verfügbar werden soll.
In der Regel würden Sie das zurückgegebene Objekt LoadAsync an einer bestimmten Stelle in der Objektstruktur Ihrer Anwendung zuweisen, mit dem Wissen, dass Inhalte möglicherweise noch ausgefüllt werden und zu inkrementellen Layoutaktualisierungen führen können, wenn der gesamte Inhalt als Teil der Benutzeroberfläche verfügbar gemacht wird. Aus diesem Grund ist es typisch, alle asynchron geladenen Objekte aus XAML zu isolieren oder zu virtualisieren und anwendungsspezifische Logik oder Anwendungsstatus zu verwenden, um zu benachrichtigen, wann LoadCompleted behandelt wird.
Damit LoadAsync XAML-Eingabe asynchron geladen werden kann, muss das Stammelement im XAML-Markup das Attribut und den Wert x:SynchronousMode="Async"enthalten. Der Wert wird als Groß-/Kleinschreibung behandelt. Wenn der XAML-Markupstamm nicht enthält x:SynchronousMode="Async", wird keine Ausnahme ausgelöst, und der Aufruf wird stattdessen als synchrones Laden verarbeitet (siehe Load(XmlReader)).
Pro Instanz der XamlReader Klasse kann jeweils nur ein asynchroner Ladevorgang ausgeführt werden. Wenn mehrere asynchrone Vorgänge in derselben Instanz der XamlReader Klasse ausgelöst werden, wird ein InvalidOperationException Fehler ausgelöst.
Diese Methode speichert in der Aufgabe, die alle Nicht-Verwendungs-Ausnahmen zurückgibt, die das synchrone Gegenstück der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Verwendungsausnahmen, z. B. ArgumentException, werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie in den von Load(XmlReader).
Weitere Informationen
Gilt für:
LoadAsync(Stream, Boolean)
public:
System::Object ^ LoadAsync(System::IO::Stream ^ stream, bool useRestrictiveXamlReader);
public object LoadAsync(System.IO.Stream stream, bool useRestrictiveXamlReader);
member this.LoadAsync : System.IO.Stream * bool -> obj
Public Function LoadAsync (stream As Stream, useRestrictiveXamlReader As Boolean) As Object
Parameter
- stream
- Stream
- useRestrictiveXamlReader
- Boolean
Gibt zurück
Hinweise
Diese Methode speichert in der Aufgabe, die alle Nicht-Verwendungs-Ausnahmen zurückgibt, die das synchrone Gegenstück der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Verwendungsausnahmen, z. B. ArgumentException, werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie in den von Load(Stream, Boolean).