Comment : charger un fichier XAML dans un FlowDocumentScrollViewer
Mise à jour : novembre 2007
Cet exemple montre comment analyser un fichier XAML qui contient un FlowDocument et afficher le fichier chargé dans un FlowDocumentScrollViewer.
Exemple
L'exemple suivant définit un FlowDocumentScrollViewer vide nommé qui sera manipulé par l'exemple de code ci-dessous.
<FlowDocumentScrollViewer
Name="flowDocScrollViewer"
HorizontalScrollBarVisibility="Auto"
VerticalScrollBarVisibility="Auto"
IsSelectionEnabled="True"
IsToolBarVisible="True"
MinZoom="50" MaxZoom="1000"
Zoom="120" ZoomIncrement="5"
/>
À la base, plusieurs étapes sont nécessaires pour charger un fichier FlowDocument dans un FlowDocumentScrollViewer.
Ouvrez le fichier FlowDocument en tant que flux.
Analysez le flux dans un objet FlowDocument. La méthode Load fournie par la classe XamlReader est prévue pour exécuter cette opération.
Définissez l'objet FlowDocument résultant comme valeur de la propriété Document sur le FlowDocumentScrollViewer.
L'exemple suivant exécute ces étapes.
void LoadFlowDocumentScrollViewerWithXAMLFile(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.
flowDocScrollViewer.Document = content;
xamlFile.Close();
}
Si le FlowDocument fait référence à des ressources externes (telles que des fichiers image) en utilisant des URI (Uniform Resource Identifiers) relatifs, il est nécessaire de spécifier un ParserContext qui inclut un BaseUri de sorte que l'analyseur puisse interpréter les URI relatifs. La classe XamlReader fournit la méthode Load qui accepte un ParserContext.
Voir aussi
Tâches
Comment : enregistrer le contenu d'un FlowDocumentScrollViewer en tant que fichier XAML