Como: Carregar um Arquivo XAML em um FlowDocumentPageViewer
Este exemplo demonstra como processar um arquivo XAML que contém um FlowDocument, e mostra o arquivo carregado em um FlowDocumentPageViewer.
Exemplo
O seguinte exemplo define um FlowDocumentPageViewer vazio que será manipulado pelo código exemplo abaixo.
<FlowDocumentPageViewer
Name="flowDocPageViewer"
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 FlowDocumentPageViewer.
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 FlowDocumentPageViewer.
O seguinte exemplo realiza esses passos.
void LoadFlowDocumentPageViewerWithXAMLFile(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.
flowDocPageViewer.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.
Consulte também
Tarefas
Como: Save the Contents of a FlowDocumentPageViewer as a XAML File