Como: Carregar um Arquivo XAML em um FlowDocumentReader
Este exemplo demonstra como processar um arquivo XAML que contém um FlowDocument, e mostra o arquivo carregado em um FlowDocumentReader.
Exemplo
O seguinte exemplo define um FlowDocumentReader vazio que será manipulado pelo código exemplo abaixo.
<FlowDocumentReader
Name="flowDocRdr"
IsFindEnabled="True"
IsPrintEnabled="True"
MinZoom="50" MaxZoom="1000"
Zoom="120" ZoomIncrement="5"
/>
No nível mais básico, existem passos envolvendo o carregamento de um arquivo FlowDocument em um FlowDocumentReader.
Abra o arquivo FlowDocument como um stream.
Processe o stream dentro de um objeto FlowDocument. O método Load fornecido pela classe XamlReader é para realizar esta operação.
Defina o objeto FlowDocument resultante como o valor da propriedade Document do FlowDocumentReader.
O seguinte exemplo realiza esses passos.
void LoadFlowDocumentReaderWithXAMLFile(string fileName)
{
// Open the file that contains the FlowDocument...
FileStream xamlFile = new FileStream(fileName, FileMode.Open, FileAccess.Read);
// and parse the file with the XamlReader.Load method.
FlowDocument content = XamlReader.Load(xamlFile) as FlowDocument;
// Finally, set the Document property to the FlowDocument object that was
// parsed from the input file.
flowDocRdr.Document = content;
xamlFile.Close();
}
Se o FlowDocument referencia recursos externos (como arquivos de imagem) usando uniform resource identifiers (URIs) relativos, é necessário especificar um ParserContext que inclui um BaseUri para que o processador possa fazer sentido do URIs relativo. A classe XamlReader fornece método Load que aceita um ParserContext.
Para um exemplo funcional que permite ao usuário carregar um arquivo XAML em um FlowDocumentReader, consulte Exemplo XAML FlowDocumentReader Carregar/salvar.
Consulte também
Tarefas
Como: Salvar o Conteúdo de um FlowDocumentReader como um Arquivo XAML