zoukankan      html  css  js  c++  java
  • WPF使用Winform PDFView控件

    最近开发wpf项目中有一个模块需要显示PDF文件内容。由于WPF本身没有PDF加载控件(似乎有收费的我查到过类似的资料。如果有新的pdf控件也请通知我一下谢谢)。

    项目使用之前也是从网上获取的资料,因此接下来的控件命名和项目命名完全沿用原文档。具体地址忘记了。这样也好感谢原作者。

    不过里面的逻辑根据项目实际应用做了变工 。每人理解不同为了大家更快更好地的使用。因此我也对自己理解整理出文档供大家参考一下。不足之处还请多指教

    因此打算使用WinFrom中所提供的pdf阅读库

    首先要准备好AxInterop.AcroPDFLib.dll,Interop.AcroPDFLib.dll类库。 计算机安装过adopdf阅读器

    接下来开始制作WinformPDF用户控件

    项目中控件和项目命名 采用

    首先新建一个项目 添加Winform UserControl。

    添加引用两个pdf类库

    接下来 给用用户控件中添加pdf控件

    接下来打开打开用户控件后置类,重新构造用户控件的构造函数,将用户控件被初始化时 加载显示PDF内容




    这样的话 Winform部分就完成了,编译运行成功。如果失败请参照异常信息进行程序修正。

    接下来进入主题wpf中使用pdf文档阅读

    首先WPF要使用Winform中的空间需要添加对应的类库支持。

    接下来在WPF项目中添加引用 刚刚完成的 pdfView用户控件

    到此WPF引用结束。现在我们开始WPF中进行使用控件

    WPF使用控件有两种方式

    1 不采用设计模式 直接使用后置类中进行阅读PDF文档,如果采用这种方式直接 调用控件为PDF控件赋值文件路径即可

    备注:WindowFormHost是加载winform控件的容器因此必须将所有winform控件放在WindowFormHost内。

    第二种使用MVVM设计模式使用绑定方式。由于WindowFormHost的Child不支持绑定因此绑定方式特殊一点。

    上述代码是通过以当前主窗体为标准通过控件名字WinFormHostOfPdfCtrl查找到WinformHost控件 将PDF控件赋值给Child属性

    到此所有WPF引用PDF文件阅读结束,应该还算详细吧参照文档就能实现所要的功能。如果有不足支出还请多多指出来,共同学习。

    运行看一下结果

  • 相关阅读:
    HDU 2888 Check Corners (模板题)【二维RMQ】
    POJ 3264 Balanced Lineup(模板题)【RMQ】
    poj 3368 Frequent values(经典)【RMQ】
    SPOJ RPLN (模板题)(ST算法)【RMQ】
    UVA 796 Critical Links(模板题)(无向图求桥)
    UVA 315 Network (模板题)(无向图求割点)
    POJ 2029 Get Many Persimmon Trees (模板题)【二维树状数组】
    poj 3067 Japan 【树状数组】
    POJ 2481 Cows 【树状数组】
    POJ 1195 Mobile phones【二维树状数组】
  • 原文地址:https://www.cnblogs.com/HelloXZ/p/3449532.html
Copyright © 2011-2022 走看看