WPF程序中的XPSDocumentViewer

在.NET 3.0中,提供了对XPS文件格式的全新支持。在WPF程序中,有一个控件是DocumentViewer。这里对它的使用做一个简要介绍

<Window x:Class="WpfApplication2.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="444" Width="640">
    <Grid>
        <DocumentViewer Margin="12,12,12,40" Name="documentViewer1" />
        <Button Height="23" HorizontalAlignment="Left" Margin="12,0,0,11" Name="button1" VerticalAlignment="Bottom" Width="75" Click="button1_Click">打开</Button>
    </Grid>
</Window>


后台代码

using System.Windows.Xps.Packaging;
using System.Windows.Forms;

namespace WpfApplication2
{
    /// <summary>
    /// Window1.xaml 的交互逻辑
    /// </summary>
    public partial class Window1 : Window
    {
        public Window1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, RoutedEventArgs e)
        {
            OpenFileDialog dialog = new OpenFileDialog();
            dialog.Filter = "XPS 文档(*.xps)|*.xps";
            if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                XpsDocument doc = new XpsDocument(dialog.FileName, System.IO.FileAccess.Read);
                documentViewer1.Document = doc.GetFixedDocumentSequence();

            }
        }
    }
}

 

注意,要使用该代码,必须是VS2008,并设置为目标框架为.NET 3.0或者.NET 3.5

还需要手工添加下面两个引用

image

这个ReachFramework.dll是在C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0这个目录下

image

原文地址:https://www.cnblogs.com/chenxizhang/p/1450995.html