XamlReader.LoadAsync Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Lê a marcação XAML e retorna um objeto que corresponde à raiz da marcação especificada.
Sobrecargas
LoadAsync(Stream, ParserContext, Boolean) | |
LoadAsync(XmlReader, Boolean) | |
LoadAsync(Stream, ParserContext) |
Lê a entrada XAML no Stream especificado e retorna a raiz da árvore de objetos correspondente. |
LoadAsync(Stream) |
Lê a entrada XAML no Stream especificado e retorna a raiz da árvore de objetos correspondente. |
LoadAsync(XmlReader) |
Lê a entrada XAML no XmlReader especificado e retorna a raiz da árvore de objetos correspondente. |
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
Parâmetros
- stream
- Stream
- parserContext
- ParserContext
- useRestrictiveXamlReader
- Boolean
Retornos
Comentários
Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Load(Stream, ParserContext, Boolean).
Aplica-se a
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
Parâmetros
- reader
- XmlReader
- useRestrictiveXamlReader
- Boolean
Retornos
Comentários
Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Load(XmlReader, Boolean).
Aplica-se a
LoadAsync(Stream, ParserContext)
Lê a entrada XAML no Stream especificado e retorna a raiz da árvore de objetos correspondente.
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
Parâmetros
- stream
- Stream
Um fluxo que contém a entrada XAML a ser carregada.
- parserContext
- ParserContext
Informações de contexto usadas pelo analisador.
Retornos
A raiz da árvore de objetos criada.
Exceções
stream
é null
.
Várias operações de carregamento são executadas simultaneamente com o mesmo XamlReader.
Comentários
Uma operação de carga XAML assíncrona retornará inicialmente um objeto que é puramente o objeto raiz. De forma assíncrona, a análise XAML continua e todos os objetos filho são preenchidos sob a raiz. Isso contrasta com o comportamento típico de processamento XAML do WPF e sua interação com os conceitos do WPF de tempo de vida do objeto. Na interação típica (não assíncrona), todas as propriedades de um objeto, incluindo todas as coleções filho, são preenchidas antes de retornar um elemento e reportá-lo como carregado. Esse comportamento equivale a uma metodologia de baixo para cima para criar a árvore em que o objeto raiz é o último objeto a ficar disponível.
Normalmente, você atribuiria o objeto retornado a algum local na árvore de objetos do aplicativo, com o conhecimento de que o conteúdo ainda pode estar preenchendo e pode causar atualizações de layout incrementais se todo o conteúdo for exposto como parte da interface do usuário. Por esse motivo, é comum isolar ou virtualizar objetos carregados de forma assíncrona do XAML e usar a lógica específica do aplicativo ou o estado do aplicativo para notificar quando LoadCompleted é manipulado.
Para LoadAsync carregar a marcação de forma assíncrona, o elemento raiz na marcação XAML deve conter o atributo e o valor x:SynchronousMode="Async"
. O valor é tratado como diferencial de maiúsculas de minúsculas. Se a raiz de marcação XAML não contiver x:SynchronousMode="Async"
, nenhuma exceção será gerada e a chamada será processada como uma carga síncrona (consulte Load(Stream, ParserContext)).
Somente uma operação de carga assíncrona por instância da XamlReader classe pode ser executada por vez. Se mais de uma operação assíncrona for tentada na mesma instância da XamlReader classe, uma InvalidOperationException será gerada.
Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Load(Stream, ParserContext).
Confira também
Aplica-se a
LoadAsync(Stream)
Lê a entrada XAML no Stream especificado e retorna a raiz da árvore de objetos correspondente.
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
Parâmetros
- stream
- Stream
O fluxo que contém a entrada XAML a ser carregada.
Retornos
O objeto que é a raiz da árvore de objetos criada.
Exceções
stream
é null
.
Várias operações de carregamento estão pendentes simultaneamente com o mesmo XamlReader.
Comentários
Uma operação de carga XAML assíncrona retornará inicialmente um objeto que é puramente o objeto raiz. De forma assíncrona, a análise XAML continua e todos os objetos filho são preenchidos sob a raiz. Isso contrasta com o comportamento típico de processamento XAML do WPF e sua interação com os conceitos do WPF de tempo de vida do objeto. Na interação típica (não assíncrona), todas as propriedades de um objeto, incluindo todas as coleções filho, são preenchidas antes de retornar um elemento e reportá-lo como carregado. Esse comportamento equivale a uma metodologia de baixo para cima para criar a árvore em que o objeto raiz é o último objeto a ficar disponível.
Normalmente, você atribuiria o objeto retornado a algum local na árvore de objetos do aplicativo WPF, com o conhecimento de que o conteúdo ainda pode estar preenchendo e pode causar atualizações de layout incrementais se todo o conteúdo for exposto como parte da interface do usuário. Por esse motivo, é comum isolar ou virtualizar objetos carregados de forma assíncrona do XAML e usar a lógica específica do aplicativo ou o estado do aplicativo para notificar quando LoadCompleted é manipulado.
Para LoadAsync carregar a entrada XAML de forma assíncrona, o elemento raiz na entrada XAML deve conter o atributo e o valor x:SynchronousMode="Async"
. O valor é tratado como diferencial de maiúsculas de minúsculas. Se a raiz de entrada XAML não contiver x:SynchronousMode="Async"
, nenhuma exceção será gerada e a chamada será processada como uma carga síncrona (consulte Load(Stream)).
Somente uma operação de carga assíncrona por instância da XamlReader classe pode ser executada por vez. Se mais de uma operação assíncrona for tentada na mesma instância da XamlReader classe, uma InvalidOperationException será gerada.
Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Load(Stream).
Confira também
Aplica-se a
LoadAsync(XmlReader)
Lê a entrada XAML no XmlReader especificado e retorna a raiz da árvore de objetos correspondente.
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
Parâmetros
Retornos
A raiz da árvore de objetos criada.
Exceções
reader
é null
.
Várias operações de carregamento são executadas simultaneamente com o mesmo XamlReader.
Comentários
Uma operação de carga XAML assíncrona retornará inicialmente um objeto que é puramente o objeto raiz. De forma assíncrona, a análise XAML continua e todos os objetos filho são preenchidos sob a raiz. Isso contrasta com o comportamento típico de processamento XAML do WPF e sua interação com os conceitos do WPF de tempo de vida do objeto. Na interação típica (não assíncrona), todas as propriedades de um objeto, incluindo todas as coleções filho, são preenchidas antes de retornar um elemento e reportá-lo como carregado. Esse comportamento equivale a uma metodologia de baixo para cima para criar a árvore em que o objeto raiz é o último objeto a ficar disponível.
Normalmente, você atribuiria o objeto retornado de LoadAsync a algum local na árvore de objetos do aplicativo, com o conhecimento de que o conteúdo ainda pode estar preenchendo e pode causar atualizações de layout incrementais se todo o conteúdo for exposto como parte da interface do usuário. Por esse motivo, é comum isolar ou virtualizar objetos carregados de forma assíncrona do XAML e usar a lógica específica do aplicativo ou o estado do aplicativo para notificar quando LoadCompleted é manipulado.
Para LoadAsync carregar a entrada XAML de forma assíncrona, o elemento raiz na marcação XAML deve conter o atributo e o valor x:SynchronousMode="Async"
. O valor é tratado como diferencial de maiúsculas de minúsculas. Se a raiz de marcação XAML não contiver x:SynchronousMode="Async"
, nenhuma exceção será gerada e a chamada será processada como uma carga síncrona (consulte Load(XmlReader)).
Somente uma operação de carga assíncrona por instância da XamlReader classe pode ser executada por vez. Se mais de uma operação assíncrona for tentada na mesma instância da XamlReader classe, uma InvalidOperationException será gerada.
Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Load(XmlReader).
Confira também
Aplica-se a
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
Parâmetros
- stream
- Stream
- useRestrictiveXamlReader
- Boolean
Retornos
Comentários
Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Load(Stream, Boolean).