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 { /// <summary> /// 必需的设计器变量。 /// </summary> private System.ComponentModel.IContainer components = null; /// <summary> /// 清理所有正在使用的资源。 /// </summary> /// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param> protected override void Dispose(bool disposing) { if (disposing && (components != null)) { components.Dispose(); } base.Dispose(disposing); } #region Windows 窗体设计器生成的代码 /// <summary> /// 设计器支持所需的方法 - 不要 /// 使用代码编辑器修改此方法的内容。 /// </summary> 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; } } |
时间: 2024-09-28 03:50:58