WPF使用Winform PDFView控件

摘要:
如果要使用WinFrom中提供的pdf阅读库,应首先准备AxInterop.AcroPDFLib.dll和Interop.ACroPDFLibdll类库。计算机已经安装了adopdf阅读器,然后开始制作WinformPDF用户控制项目。控件和项目命名方法是创建一个新项目并添加WinformUserControl。接下来,输入主题wpf并阅读pdf文档。首先,WPF需要添加相应的类库支持来使用Winform中的空间。上面的代码是基于当前主窗体通过控件名WinFormHostOfPdfCtrl查找WinformHost控件,并将PDF控件分配给Child属性。阅读所有WPF参考PDF文件到此结束。它应该更详细。您可以通过参考文档来实现所需的功能。

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

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

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

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

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

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

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

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

添加引用两个pdf类库
WPF使用Winform PDFView控件第1张
WPF使用Winform PDFView控件第2张

WPF使用Winform PDFView控件第3张

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

WPF使用Winform PDFView控件第4张

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

WPF使用Winform PDFView控件第5张


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

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

首先WPF要使用Winform中的空间需要添加对应的类库支持。
WPF使用Winform PDFView控件第6张

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

WPF使用Winform PDFView控件第7张

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

WPF使用控件有两种方式

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

WPF使用Winform PDFView控件第9张

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

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

WPF使用Winform PDFView控件第10张

WPF使用Winform PDFView控件第11张

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

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

运行看一下结果

WPF使用Winform PDFView控件第12张

免责声明:文章转载自《WPF使用Winform PDFView控件》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Openfire/XMPP学习之——Openfire的安装、配置Oracle千万级数据入库下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

WPF 中动态创建和删除控件

动态创建控件 1.容器控件.RegisterName("Name",要注册的控件) //注册控件 2.容器控件.FindName("Name") as 控件类型 //找到控件并转换成相应类型 注意:仅通过 控件.Name来设置是不能通过FindName来找到控件的,必须注册 动态删除控件1.容器控件.Children.Remove(控件) //移除控件 2...

使用JavaScript开发Acrobat应用程序01

参考:Developing Acrobat Application Using JavaScript 本章介绍Acrobat脚本模型中的JavaScript和它的对象体系,以及与JavaScript简单结合的Acrobat PDF 概述Acrobat中的JavaScript是对JavaScript核心(ISO-16262标准的1.5版本)的一个扩展,正式名...

WPF自定义窗口(Windows Server 2012 Style)

先上图 新建CustomControl,名:HeaderedWindow ThemesGeneric.aml文件夹下加入 笔刷,转换器 1 <SolidColorBrush x:Key="ActiveBackground" Color="#FF66CBEA"/> 2 <SolidColorBrush x:Key="De...

WPF 中托管 UWP

托管标准 UWP 控件 1. 新建空白应用(通用 Windows)项目,确保目标版本和最低版本均设置为 Windows 10 版本 1903 或更高版本。在 UWP 应用项目中,安装Microsoft.Toolkit.Win32.UI.XamlApplication 2. 修改App的默认基类为XamlApplication <xaml:XamlAp...

WPF布局控件与子控件的HorizontalAlignment/VerticalAlignment属性之间的关系

WPF布局控件与子控件的HorizontalAlignment/VerticalAlignment属性之间的关系: 1、Canvas/WrapPanel控件:   其子控件的HorizontalAlignment/VerticalAlignment属性无效。2、Grid控件:   其子控件的HorizontalAlignment/VerticalAlignm...

WPF DesiredSize &amp;amp; RenderSize

DesiredSize DesiredSize介绍 关于DesiredSize的介绍,可以查看最新微软文档对DesiredSize的介绍 DesiredSize,指的是元素在布局过程中计算所需要的大小。 通过调用方法Measure计算得到DesiredSize 1 element.Measure(availableSize); 2 var desi...