C#操作Word文档格式.docx
- 文档编号:16731149
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:9
- 大小:170.18KB
C#操作Word文档格式.docx
《C#操作Word文档格式.docx》由会员分享,可在线阅读,更多相关《C#操作Word文档格式.docx(9页珍藏版)》请在冰豆网上搜索。
AddButton方法中的参数说明如表1所示。
表1AddButton方法中的参数说明
实例中介绍了向Word文档中插入Windows控件的方法,当AddButton方法执行后将会向Word文档中插入Button按钮同时还会返回此Button对象的引用,可以通过设置此Button对象的属性和事件来控制Word文档中Button按钮的状态和事件。
设计过程
(1)打开VisualStudio2008开发环境,选择文件菜单中的“新建”/“项目”,此时会弹出“新建项目”窗口,在“新建项目”窗口的“项目类型”中选择“VisualC#”/“Office”,在右侧模板中选择“Word2003文档”,并在名称中添写“InsertControl”,并选择项目保存位置,单击确定按钮新建项目。
如图2所示。
图2在VS2008中创建Word2003文档
(2)在打开的Word文档中单击鼠标右键选择“查看代码”,在Startup事件中写入代码如下:
privatevoidThisDocument_Startup(objectsender,System.EventArgse)
{
Word.RangeP_Range1=this.Paragraphs[1].Range;
//得到文档范围
Microsoft.Office.Tools.Word.Controls.ButtonP_btn=
//向文档中添加按钮
this.Controls.AddButton(P_Range1,50,20,"
button1"
);
P_btn.Text="
Button按钮"
;
//设置按钮文本
P_btn.Height=50;
//设置按钮高度
P_btn.Width=100;
//设置按钮宽度
P_btn.Click+=newEventHandler(P_btn_Click);
//添加单击事件
}
C#操作Word
(二)——将Word文档嵌入到WinForm窗体中
Office是我们日常工作中经常用到的办公软件,然而,随着信息技术的飞速发展,已经有越来越多的人使用Word写作文档、使用Excel制做报表、使用OutLook方便的收发电子邮件。
一切的操作都是这么轻松,实例中将会介绍怎样使用C#在Form窗体中显示Word文档,运行效果如图1所示。
图1
将Word文档嵌入到WinForm窗体中
本实例重点在于向读者介绍怎样使用WebBrowser控件显示Word文档,下面对本实例中所用到的关键技术进行详细讲解。
WebBrowser控件是Windows窗体应用程序的标准控件,使用WebBrowser控件可以在窗体中显示网页信息,通过WebBrowser控件的Navigate方法可以将指定位置的文档加载到WebBrowser控件中,该方法常用的语法格式如下:
publicvoidNavigate(stringurlString)
参数说明
urlString:
要加载的文档的URL地址。
WebBrowser控件也可以加载并显示Excel文件。
(1)打开VisualStudio2008开发环境,新建一个Windows窗体应用程序,命名为WordInForm。
(2)更改默认窗体Form1的Name属性为Frm_Main,更改Text属性为“将Word文档嵌入到WinForm窗体中”,并向窗体中添加一个MenuStrip菜单控件,向菜单中添加两个菜单项“打开”和“退出”分别用于打开Word文档和退出应用程序;
向窗体中添加WebBrowser控件,此控件用于显示Word文档。
(3)程序主要代码如下:
privatevoid打开ToolStripMenuItem_Click(objectsender,EventArgse)
OpenFileDialogP_GetFile=newOpenFileDialog();
//创建打开文件对话框对象
DialogResultP_dr=P_GetFile.ShowDialog();
//显示打开文件对话框
if(P_dr==DialogResult.OK)
//是否单击确定
{
WebBrowser.Navigate(P_GetFile.FileName);
//打开Word文档并显示
}
C#操作Word(三)——C#向Word文档中写入文字
Word有着强大的文本编辑功能,我们可以轻松的在Word中输入文本内容,更改文字字体,设置文字大小、颜色,方便的对文本内容排版。
在前面的实例中已经详细介绍了怎样使用C#创建Word文档,本实例将会使用C#方便的向指定的Word文档中输入文本内容。
向Word文档中写入文字
实例运行中单击“创建Word文档”按钮,会根据用户选择的路径位置创建Word文档并向文档中添加文字,而文档的名称就是当前系统日期与时间。
创建的Word文档如图2所示。
图2
被写入文字的Word文档
本实例重点在于向读者介绍怎样使用Word文档中Range属性向Word中添加文本信息,下面对本实例用到的关键技术进行详细讲解。
读取或设置Word文档中的文本内容的方式基本相同,首先是得到文本内容的范围,然后通过范围对象读取或设置文本信息。
实例中首先使用了Paragraphs集合中的索引获取Word文档中的段落对象,然后通过Paragraph段落对象的Range属性得到文档中段落的范围,最后通过范围对象的Text属性获取或设置段落内的文本信息。
在Word文档的操作中也可以使用Range对象的Collapse方法折叠Range对象。
折叠后的Range对象将不包含文本或其它信息,只是标注文档中的一个位置。
(1)打开VisualStudio2008开发环境,新建一个Windows窗体应用程序,命名为AddLetter。
(2)使用C#操作Word文档,需要引用相关的COM组件,引用COM组件的步骤请参照实例002中的设计过程。
(3)更改默认窗体Form1的Name属性为Frm_Main,更改Text属性为“向Word文档中写入文字”,并向窗体中添加两个TextBox控件,控件分别用输入字符串和显示Word文档保存路径;
向窗体中添加3个Button按钮,这3个按钮分别用于选择文档保存路径、创建Word文档和显示Word文档。
(4)程序主要代码如下:
privatevoidbtn_New_Click(objectsender,EventArgse)
btn_New.Enabled=false;
//停用新建按钮
ThreadPool.QueueUserWorkItem(
//使用线程池
(P_temp)=>
//使用lambda表达式
G_wa=newWord.Application();
//创建Word应用程序对象
Word.DocumentP_wd=G_wa.Documents.Add(
//建立新文档
refG_missing,refG_missing,refG_missing,refG_missing);
Word.RangeP_Range=P_wd.Paragraphs[1].Range;
//得到文档的范围对象
P_Range.Text=txt_add.Text;
//向文档中添加字符串
G_str_path=string.Format(
//计算文件保存路径
@"
{0}{1}"
G_FolderBrowserDialog.SelectedPath,
DateTime.Now.ToString("
yyyy年M月d日h时s分m秒fff毫秒"
)+"
.doc"
P_wd.SaveAs(
//保存Word文件
refG_str_path,
refG_missing,refG_missing,refG_missing,refG_missing,
refG_missing,refG_missing,refG_missing);
((Word._Application)G_wa.Application).Quit(
//退出应用程序
this.Invoke(
//开始执行窗体线程
(MethodInvoker)(()=>
btn_Display.Enabled=true;
//启用显示按钮
MessageBox.Show("
成功创建Word文档!
"
"
提示!
//弹出消息对话框
}));
});
C#操作Word(四)——在Word文档中绘制表格
使用Excel可以方便的处理表格信息,但是在Word中也可以简单的使用表格,在Word菜单中单击“表格”/“插入”/“表格”,在插入表格窗口中添加表格的行数和列数,最后单击“确定”按钮插入表格。
在实例中我们可以使用C#方便的向指定的Word文档中插入表格,并在表格中添加相应信息。
在Word文档中绘制表格
实例运行中单击“创建Word文档”按钮,会根据用户选择的路径位置创建Word文档并向文档中绘制表格,而文档的名称就是当前系统日期与时间。
图2Word文档中的表格
本实例重点在于向读者介绍怎样使用Tabels集合的Add方法在文档中绘制表格,下面对本实例用到的关键技术进行详细讲解。
通过Document对象的Tables属性可以得到Tables集合,使用Tables集合对象的Add方法可以轻松的在Word文档中绘制表格,Add方法的语法格式如下:
TableAdd(RangeRange,intNumRows,intNumColumns,refobjectDefaultTableBehavior,refobjectAutoFitBehavior);
Add方法中的参数说明如表1所示。
表1
Add方法中的参数说明
在Word文档中插入表格后可以使用表格对象的Cell方法获取或设置表格中的文本内容,Cell方法接受两个参数,两个参数分别为表格中行与列的索引,要注意一点,表格中的行与列的索引值从1开始。
(1)打开VisualStudio2008开发环境,新建一个Windows窗体应用程序,命名为AddTable。
(3)更改默认窗体Form1的Name属性为Frm_Main,更改Text属性为“在Word文档中绘制表格”,并向窗体中添加3个TextBox控件,3个TextBox控件分别用显示Word文档保存路径、设置插入表格行数和设置插入表格列数;
向窗体中添加3个Button按钮,这3个按钮分别用于选择Word文档保存路径、创建Word文档和显示Word文档。
G_ToolProgressBar.Minimum=1;
//设置进度条最小值
G_ToolProgressBar.Maximum=
//设置进度条最大值
int.Parse(txt_row.Text)+1;
//得到文档范围对象
objectP_DefaultTable=
//创建表格参数对象
Word.WdDefaultTableBehavior.wdWord8TableBehavior;
objectP_AutoFit=
Word.WdAutoFitBehavior.wdAutoFitWindow;
Word.TableP_WordTable=P_Range.Tables.Add(
//向文档中添加表格
P_Range,
int.Parse(txt_row.Text),
int.Parse(txt_column.Text),
refP_DefaultTable,refP_AutoFit);
for(inti=1;
i<
int.Parse(txt_row.Text)+1;
i++)
for(intj=1;
j<
int.Parse(txt_column.Text)+1;
j++)
P_WordTable.Cell(i,j).Range.Text=
//向表格中添加数据
string.Format("
{0}行{1}列"
i.ToString(),j.ToString());
Thread.Sleep(10);
//线程挂起10毫秒
//调用窗体线程
//使用Lambda表达式
G_ToolProgressBar.Value=i+1;
//设置进度信息
Word.TablenewTable=WordDoc.Tables.Add(WordApp.Selection.Range,12,3,refNothing,refNothing);
wordDoc.Tables.Item
(1).Borders.Item(Word.WdBorderType.wdBorderLeft).LineStyle=Word.WdLineStyle.wdLineStyleSingle;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 操作 Word