Office是我们日常工作中经常用到的办公软件,然而,随着信息技术的飞速发展,已经有越来越多的人使用Word写作文档、使用Excel制做报表、使用OutLook方便的收发电子邮件。一切的操作都是这么轻松,实例中将会介绍怎样使用C#在Form窗体中显示Word文档,运行效果如图1所示。
图1 将Word文档嵌入到WinForm窗体中
关键技术
本实例重点在于向读者介绍怎样使用WebBrowser控件显示Word文档,下面对本实例中所用到的关键技术进行详细讲解。
WebBrowser控件是Windows窗体应用程序的标准控件,使用WebBrowser控件可以在窗体中显示网页信息,通过WebBrowser控件的Navigate方法可以将指定位置的文档加载到WebBrowser控件中,该方法常用的语法格式如下:
public void Navigate(string urlString)
参数说明
urlString:要加载的文档的URL地址。
说明:WebBrowser控件也可以加载并显示Excel文件。
设计过程
(1)打开Visual Studio 2008开发环境,新建一个Windows窗体应用程序,命名为WordInForm。
(2)更改默认窗体Form1的Name属性为Frm_Main,更改Text属性为“将Word文档嵌入到WinForm窗体中”,并向窗体中添加一个MenuStrip菜单控件,向菜单中添加两个菜单项“打开”和“退出”分别用于打开Word文档和退出应用程序;向窗体中添加WebBrowser控件,此控件用于显示Word文档。
(3)程序主要代码如下:
代码如下 | 复制代码 |
private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
{
OpenFileDialog P_GetFile = new OpenFileDialog(); //创建打开文件对话框对象
DialogResult P_dr = P_GetFile.ShowDialog(); //显示打开文件对话框
if (P_dr == DialogResult.OK) //是否单击确定
{
WebBrowser.Navigate(P_GetFile.FileName); //打开Word文档并显示
}
}
|
下面看个完整的实例
代码如下 | 复制代码 |
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Microsoft.Office.Core;
namespace WordInForm
{
public partial class Frm_Main : Form
{
public Frm_Main()
{
InitializeComponent();
}
private void btn_Get_Click(object sender, EventArgs e)
{
}
private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
{
OpenFileDialog P_GetFile = new OpenFileDialog();//创建打开文件对话框对象
DialogResult P_dr = P_GetFile.ShowDialog();//显示打开文件对话框
if (P_dr == DialogResult.OK)//是否点击确定
{
WebBrowser.Navigate(P_GetFile.FileName);//打开Word文档并显示
}
}
private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Close();//关闭当前窗体
}
}
}
|
Frm_Main.Designer.cs
代码如下 | 复制代码 |
namespace WordInForm
{
partial class Frm_Main
{
///
/// 必需的设计器变量。
///
private System.ComponentModel.IContainer components = null;
///
/// 清理所有正在使用的资源。
///
/// 如果应释放托管资源,为 true;否则为 false。
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows 窗体设计器生成的代码
///
/// 设计器支持所需的方法 - 不要
/// 使用代码编辑器修改此方法的内容。
///
private void InitializeComponent()
{
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
this.文件ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.打开ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.退出ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.WebBrowser = new System.Windows.Forms.WebBrowser();
this.menuStrip1.SuspendLayout();
this.SuspendLayout();
//
// menuStrip1
//
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.文件ToolStripMenuItem});
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
this.menuStrip1.Name = "menuStrip1";
this.menuStrip1.Size = new System.Drawing.Size(475, 25);
this.menuStrip1.TabIndex = 1;
this.menuStrip1.Text = "menuStrip1";
//
// 文件ToolStripMenuItem
//
this.文件ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.打开ToolStripMenuItem,
this.退出ToolStripMenuItem});
this.文件ToolStripMenuItem.Name = "文件ToolStripMenuItem";
this.文件ToolStripMenuItem.Size = new System.Drawing.Size(44, 21);
this.文件ToolStripMenuItem.Text = "文件";
//
// 打开ToolStripMenuItem
//
this.打开ToolStripMenuItem.Name = "打开ToolStripMenuItem";
this.打开ToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.打开ToolStripMenuItem.Text = "打开";
this.打开ToolStripMenuItem.Click += new System.EventHandler(this.打开ToolStripMenuItem_Click);
//
// 退出ToolStripMenuItem
//
this.退出ToolStripMenuItem.Name = "退出ToolStripMenuItem";
this.退出ToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.退出ToolStripMenuItem.Text = "退出";
this.退出ToolStripMenuItem.Click += new System.EventHandler(this.退出ToolStripMenuItem_Click);
//
// WebBrowser
//
this.WebBrowser.Dock = System.Windows.Forms.DockStyle.Fill;
this.WebBrowser.Location = new System.Drawing.Point(0, 25);
this.WebBrowser.MinimumSize = new System.Drawing.Size(20, 20);
this.WebBrowser.Name = "WebBrowser";
this.WebBrowser.Size = new System.Drawing.Size(475, 373);
this.WebBrowser.TabIndex = 2;
//
// Frm_Main
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(475, 398);
this.Controls.Add(this.WebBrowser);
this.Controls.Add(this.menuStrip1);
this.MainMenuStrip = this.menuStrip1;
this.Name = "Frm_Main";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "将Word文档嵌入到WinForm窗体中";
this.menuStrip1.ResumeLayout(false);
this.menuStrip1.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.MenuStrip menuStrip1;
private System.Windows.Forms.ToolStripMenuItem 文件ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 打开ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem 退出ToolStripMenuItem;
private System.Windows.Forms.WebBrowser WebBrowser;
}
} |