博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Edraw Office Viewer component教程(三):将MS Word、Excel、PowerPoint嵌入到WPF应用程序中...
阅读量:6222 次
发布时间:2019-06-21

本文共 2718 字,大约阅读时间需要 9 分钟。

hot3.png

如何将Word、Excel、PowerPoint嵌入WPF应用程序?大部分人应该都记得可以将Excel图表嵌入到Word文档中的OLE技术,但该技术并不支持所有的Microsoft Office文档。它不支持表单中的多个MS Word实例。而对于开发人员可以说是最简单的可以将Word文档、Excel工作表、PowerPoint演示文稿嵌入到WPF应用程序中的解决方案。

本文将演示如何逐步嵌入MS Word到wpf应用程序中。如果你没有officeviewer.ocx文件,请先安装。在组件安装文件夹中,你还可以找到wpf示例项目。

打开Visual Studio并创建一个新的WPF应用程序。

右键单击WpfApplication1解决方案。然后单击“Add”菜单并选择“User Control...”。

wpf项目中将会增加一个新的窗体。
选择“User Control”项。不是“User Control(WPF)”项。
双击解决方案面板中的UserControl1.CS。
打开“工具箱”面板,然后单击菜单中的“ Choose Items...”。

在弹出的“Choose Toolbox Items”对话框中,选择“Edraw Office Viewer Component”,然后单击“确定”。

现在,Edraw Office Viewer Component已添加到工具箱的“常规”选项卡中。在UserControl窗体中拖动它。

通过Visual Studio将AxEDofficeLib和EDOfficeLib添加到该解决方案中。

输入打开word文档的C#代码,并保护word文档的修改如下所示:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WpfApplication1
{
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
public void Open()
{
axEDOffice1.OpenFileDialog();
}
public void Protect()
{
if (axEDOffice1.GetCurrentProgID() == "Word.Application")
{
axEDOffice1.ProtectDoc(2);
}
}
public void Print()
{
axEDOffice1.PrintPreview();
}
public void Close()
{
axEDOffice1.ExitOfficeApp();
}
}
}

最后,你需要为UserControl编写主机窗口。切换到Windows1.xaml文件,然后添加打开、保护、打印和关闭的按钮,如图所示。

添加以下c#代码来关联office component。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace WpfApplication1
{
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
}
private void Open_Click(object sender, RoutedEventArgs e)
{
_host.Open();
}
private void Protect_Click(object sender, RoutedEventArgs e)
{
_host.Protect();
}
private void Print_Click(object sender, RoutedEventArgs e)
{
_host.Print();
}
private void Close_Click(object sender, RoutedEventArgs e)
{
_host.Close();
}
}
}

打开配置管理器。将Active Solution平台更改为x86选项。然后建立并运行。

Office Viewer component支持所有版本的MS Word。要将MS Excel或PowerPoint Visio、Project嵌入到WPF应用程序中,你只需要调用Open方法,如下所示:

public void Open()
{
//axEDOffice1.OpenFileDialog();
axEDOffice1.Open(sPath, "Word.Application");
axEDOffice1.Open(sPath, "Excel.Application");
axEDOffice1.Open(sPath, "PowerPoint.Application");
axEDOffice1.Open(sPath, "Visio.Application");
axEDOffice1.Open(sPath, "MSProject.Application");
}

 

以上就是本次教程的全部内容,接下来会有更多相关教程,敬请关注!您也可以在评论者留下你的经验和建议。

转载于:https://my.oschina.net/u/3279502/blog/898378

你可能感兴趣的文章
javascript高级程序设计第三章
查看>>
Win7安装Redis
查看>>
给图片缩略图的类
查看>>
R - 一只小蜜蜂...(第二季水)
查看>>
迭代式开发技术
查看>>
ubuntu(14.04版本) 配置虚拟环境(一个ip对应多个域名)
查看>>
Eclipse 安装热部署JRebel
查看>>
IOS-项目中常见文件介绍
查看>>
Linux发送监控指标到内部邮箱
查看>>
IOS-数据缓存
查看>>
form表单中的 action=./?> 是什么意思
查看>>
消息总线扩展之主动转发
查看>>
asp.net Jquery表单html和后台交互
查看>>
java多线程系列7-停止线程
查看>>
vs2010 setup 打包 安装 BAT批处理实现自动安装软件功能
查看>>
eclipse中手动导入DTD文件的方式
查看>>
nginx+tomcat负载均衡+动静分离+redis集中管理session
查看>>
机器视觉开源处理库汇总
查看>>
C# 定时器事件(设置时间间隔,间歇性执行某一函数,控制台程序)
查看>>
Des加密方法
查看>>