XamlReader.LoadAsync 메서드

정의

XAML 태그를 읽고 지정된 태그의 루트에 해당하는 개체를 반환합니다.

오버로드

LoadAsync(Stream, ParserContext, Boolean)
LoadAsync(XmlReader, Boolean)
LoadAsync(Stream, ParserContext)

지정된 Stream에서 XAML 입력을 읽고 해당 개체 트리의 루트를 반환합니다.

LoadAsync(Stream)

지정된 Stream에서 XAML 입력을 읽고 해당 개체 트리의 루트를 반환합니다.

LoadAsync(XmlReader)

지정된 XmlReader에서 XAML 입력을 읽고 해당 개체 트리의 루트를 반환합니다.

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

매개 변수

stream
Stream
parserContext
ParserContext
useRestrictiveXamlReader
Boolean

반환

설명

이 메서드는 메서드의 동기 대응에서 throw할 수 있는 모든 비사용 예외를 반환하는 작업에 저장됩니다. 예외가 반환된 작업에 저장되면 작업이 대기될 때 해당 예외가 throw됩니다. 와 같은 ArgumentException사용 예외는 여전히 동기적으로 throw됩니다. 저장된 예외는 에서 throw Load(Stream, ParserContext, Boolean)된 예외를 참조하세요.

적용 대상

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

매개 변수

reader
XmlReader
useRestrictiveXamlReader
Boolean

반환

설명

이 메서드는 메서드의 동기 대응에서 throw할 수 있는 모든 비사용 예외를 반환하는 작업에 저장됩니다. 예외가 반환된 작업에 저장되면 작업이 대기될 때 해당 예외가 throw됩니다. 와 같은 ArgumentException사용 예외는 여전히 동기적으로 throw됩니다. 저장된 예외는 에서 throw Load(XmlReader, Boolean)된 예외를 참조하세요.

적용 대상

LoadAsync(Stream, ParserContext)

지정된 Stream에서 XAML 입력을 읽고 해당 개체 트리의 루트를 반환합니다.

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

매개 변수

stream
Stream

로드할 XAML 입력이 들어 있는 스트림입니다.

parserContext
ParserContext

파서에서 사용하는 컨텍스트 정보입니다.

반환

만든 개체 트리의 루트입니다.

예외

stream이(가) null인 경우

여러 로드 조작은 동일한 XamlReader를 사용하여 동시에 수행됩니다.

설명

비동기 XAML 로드 작업은 처음에는 순수하게 루트 개체인 개체를 반환합니다. 그런 다음 비동기적으로 XAML 구문 분석이 계속되고 모든 자식 개체가 루트 아래에 채워집니다. 이는 일반적인 WPF XAML 처리 동작 및 개체 수명 WPF 개념과의 상호 작용과는 대조적입니다. 일반적인(비동기) 상호 작용에서는 요소를 반환하고 로드된 것으로 보고하기 전에 모든 자식 컬렉션을 포함한 개체의 모든 속성이 채워집니다. 이 동작은 루트 개체가 사용할 수 있는 마지막 개체인 트리를 만들기 위한 상향식 방법론과 동일합니다.

일반적으로 애플리케이션의 개체 트리의 특정 위치에 반환된 된 개체 할당, 콘텐츠는 기술 자료를 사용 하 여 계속 채워지고 및 전체가 UI의 일부로 노출 되는 경우에 증분 레이아웃 업데이트를 발생할 수 있습니다. 따라서 일반적인 격리 또는 XAML에서 비동기적으로 로드 된 모든 개체를 가상화 하 고 경우 알림을 애플리케이션별 논리 또는 애플리케이션 상태를 사용 하는 LoadCompleted 처리 됩니다.

태그를 비동기적으로 로드하려면 LoadAsync XAML 태그의 루트 요소에 특성 및 값 x:SynchronousMode="Async"이 포함되어야 합니다. 값은 대/소문자를 구분하는 것으로 처리됩니다. XAML 태그 루트에 가 없 x:SynchronousMode="Async"으면 예외가 throw되지 않고 호출이 동기 로드로 처리됩니다(참조 Load(Stream, ParserContext)).

클래스의 instance XamlReader 당 하나의 비동기 로드 작업만 한 번에 수행할 수 있습니다. 클래스의 동일한 instance XamlReader 대해 둘 이상의 비동기 작업이 시도되면 이 InvalidOperationException throw됩니다.

이 메서드는 메서드의 동기 대응에서 throw할 수 있는 모든 비사용 예외를 반환하는 작업에 저장됩니다. 예외가 반환된 작업에 저장되면 작업이 대기될 때 해당 예외가 throw됩니다. 와 같은 ArgumentException사용 예외는 여전히 동기적으로 throw됩니다. 저장된 예외는 에서 throw Load(Stream, ParserContext)된 예외를 참조하세요.

추가 정보

적용 대상

LoadAsync(Stream)

지정된 Stream에서 XAML 입력을 읽고 해당 개체 트리의 루트를 반환합니다.

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

매개 변수

stream
Stream

로드할 XAML 입력이 들어 있는 스트림입니다.

반환

만든 개체 트리의 루트인 개체입니다.

예외

stream이(가) null인 경우

여러 로드 조작은 동일한 XamlReader로 동시에 보류됩니다.

설명

비동기 XAML 로드 작업은 처음에는 순수하게 루트 개체인 개체를 반환합니다. 그런 다음 비동기적으로 XAML 구문 분석이 계속되고 모든 자식 개체가 루트 아래에 채워집니다. 이는 일반적인 WPF XAML 처리 동작 및 개체 수명 WPF 개념과의 상호 작용과는 대조적입니다. 일반적인(비동기) 상호 작용에서는 요소를 반환하고 로드된 것으로 보고하기 전에 모든 자식 컬렉션을 포함한 개체의 모든 속성이 채워집니다. 이 동작은 루트 개체가 사용할 수 있는 마지막 개체인 트리를 만들기 위한 상향식 방법론과 동일합니다.

일반적으로 WPF 애플리케이션의 개체 트리의 특정 위치에 반환된 된 개체 할당, 콘텐츠는 기술 자료를 사용 하 여 계속 채워지고 및 전체가 UI의 일부로 노출 되는 경우에 증분 레이아웃 업데이트를 발생할 수 있습니다. 따라서 일반적인 격리 또는 XAML에서 비동기적으로 로드 된 모든 개체를 가상화 하 고 경우 알림을 애플리케이션별 논리 또는 애플리케이션 상태를 사용 하는 LoadCompleted 처리 됩니다.

XAML 입력을 LoadAsync 비동기적으로 로드하려면 XAML 입력의 루트 요소에 특성 및 값 x:SynchronousMode="Async"이 포함되어야 합니다. 값은 대/소문자를 구분하는 것으로 처리됩니다. XAML 입력 루트에 가 없 x:SynchronousMode="Async"으면 예외가 throw되지 않고 호출이 동기 로드로 처리됩니다(참조 Load(Stream)).

클래스의 instance XamlReader 당 하나의 비동기 로드 작업만 한 번에 수행할 수 있습니다. 클래스의 동일한 instance XamlReader 대해 둘 이상의 비동기 작업이 시도되면 이 InvalidOperationException throw됩니다.

이 메서드는 메서드의 동기 대응에서 throw할 수 있는 모든 비사용 예외를 반환하는 작업에 저장됩니다. 예외가 반환된 작업에 저장되면 작업이 대기될 때 해당 예외가 throw됩니다. 와 같은 ArgumentException사용 예외는 여전히 동기적으로 throw됩니다. 저장된 예외는 에서 throw Load(Stream)된 예외를 참조하세요.

추가 정보

적용 대상

LoadAsync(XmlReader)

지정된 XmlReader에서 XAML 입력을 읽고 해당 개체 트리의 루트를 반환합니다.

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

매개 변수

reader
XmlReader

XAML 입력을 이미 로드/읽은 기존 XmlReader 입니다.

반환

만든 개체 트리의 루트입니다.

예외

reader이(가) null인 경우

여러 로드 조작은 동일한 XamlReader를 사용하여 동시에 수행됩니다.

설명

비동기 XAML 로드 작업은 처음에는 순수하게 루트 개체인 개체를 반환합니다. 그런 다음 비동기적으로 XAML 구문 분석이 계속되고 모든 자식 개체가 루트 아래에 채워집니다. 이는 일반적인 WPF XAML 처리 동작 및 개체 수명 WPF 개념과의 상호 작용과는 대조적입니다. 일반적인(비동기) 상호 작용에서는 요소를 반환하고 로드된 것으로 보고하기 전에 모든 자식 컬렉션을 포함한 개체의 모든 속성이 채워집니다. 이 동작은 루트 개체가 사용할 수 있는 마지막 개체인 트리를 만들기 위한 상향식 방법론과 동일합니다.

일반적으로 반환 된 개체를 할당 합니다 LoadAsync 일부 위치로 애플리케이션의 개체 트리는 콘텐츠 정보를 사용 하 여 계속 채워지고 및 전체가의 일부로 노출 되는 경우 증분 레이아웃 업데이트가 발생할 수는 UI입니다. 따라서 일반적인 격리 또는 XAML에서 비동기적으로 로드 된 모든 개체를 가상화 하 고 경우 알림을 애플리케이션별 논리 또는 애플리케이션 상태를 사용 하는 LoadCompleted 처리 됩니다.

XAML 입력을 LoadAsync 비동기적으로 로드하려면 XAML 태그의 루트 요소에 특성 및 값 x:SynchronousMode="Async"이 포함되어야 합니다. 값은 대/소문자를 구분하는 것으로 처리됩니다. XAML 태그 루트에 가 없으면 예외가 throw되지 x:SynchronousMode="Async"않고 호출이 동기 로드로 처리됩니다(참조 Load(XmlReader)).

클래스의 instance XamlReader 당 하나의 비동기 로드 작업만 한 번에 수행할 수 있습니다. 클래스의 동일한 instance XamlReader 대해 둘 이상의 비동기 작업이 시도되면 이 InvalidOperationException throw됩니다.

이 메서드는 메서드의 동기 대응에서 throw할 수 있는 모든 비사용 예외를 반환하는 작업에 저장됩니다. 예외가 반환된 작업에 저장되면 작업이 대기될 때 해당 예외가 throw됩니다. 와 같은 ArgumentException사용 예외는 여전히 동기적으로 throw됩니다. 저장된 예외는 에서 throw Load(XmlReader)된 예외를 참조하세요.

추가 정보

적용 대상

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

매개 변수

stream
Stream
useRestrictiveXamlReader
Boolean

반환

설명

이 메서드는 메서드의 동기 대응에서 throw할 수 있는 모든 비사용 예외를 반환하는 작업에 저장됩니다. 예외가 반환된 작업에 저장되면 작업이 대기될 때 해당 예외가 throw됩니다. 와 같은 ArgumentException사용 예외는 여전히 동기적으로 throw됩니다. 저장된 예외는 에서 throw Load(Stream, Boolean)된 예외를 참조하세요.

적용 대상