2016-05-24 2 views
0

J'ai une application WPF dans laquelle l'interface graphique affiche différents aspects de l'application pour l'utilisateur, en utilisant un tab différent pour chaque partie de l'application. Je cherche maintenant à ajouter la fonctionnalité pour charger et voir le document à partir de l'application sur l'un des onglets.Ouverture d'un fichier PDF à partir d'une application WPF

J'ai ajouté un DocumentViewer à l'onglet, et peut voir qu'il est affiché dans l'interface graphique lorsque j'exécute mon application, mais je ne sais pas comment obtenir ce DocumentViewer pour charger/afficher un document, et peut ' Il semble que vous trouviez des appels/annotations de méthode qui vous permettent de faire cela.

Le balisage XAML J'utilise pour ajouter le DocumentViewer à ma demande est:

<TabItem Header="Document Viewer"> 
    <StackPanel> 
     <DocumentViewer x:Name="docViewer" Height="643" Margin="0,0,-0.4,0"/> 
      <DocumentViewer x:Name="documentViewer" Height="1" Margin="0,0,-0.4,0" RenderTransformOrigin="0.5,0.5"> 
       <DocumentViewer.RenderTransform> 
        <TransformGroup> 
         <ScaleTransform ScaleY="-1"/> 
         <SkewTransform/> 
         <RotateTransform/> 
         <TranslateTransform/> 
        </TransformGroup> 
       </DocumentViewer.RenderTransform> 
      </DocumentViewer> 
    </StackPanel> 
</TabItem> 

Comment signaler que je ce DocumentViewer dans un fichier PDF (ou .doc, ou autre) qui est situé sur mon ordinateur, afin qu'il chargera et affichera ce document dans ma fenêtre d'application?

+0

Copie possible de [Rendu PDF à l'aide du contrôle DocumentViewer?] (Http://stackoverflow.com/questions/3430177/render-pdf-using-documentviewer-control) –

+0

Désolé, impossible - 'DocumentViewer' est pour' FixedDocuments 'comme XPS, pas PDF. XPS peut être chargé comme ceci: 'XpsDocument doc = new XpsDocument (fileName, FileAccess.Read); documentViewer.Document = doc.GetFixedDocumentSequence(); ' –

+0

pls également vérifier http://stackoverflow.com/questions/3430177/render-pdf-using-documentviewer-control –

Répondre

0

La question similaire here. Wpf ne fournit aucune classe de base pour cela et si vous voulez contourner ce problème, vous pouvez ouvrir le pdf dans sa propre application en utilisant le système . Diagnostics.Process.Start (@ "filename.pdf");

Vous pouvez également visiter le lien pour d'autres options.