C# 之 Word光标移动 GoTo 方法
对于 Document 或 Range对象:返回一个 Range对象,该对象代表指定项(例如页、书签或域)的开始位置。
对于 Selection对象:将插入点移至指定项前面的字符位置,并返回一个 Range对象(但 wdGoToGrammaticalError、wdGoToProofreadingError 或 wdGoToSpellingError 常量除外)。
使用方法: expression.GoTo(What, Which, Count, Name)
Range GoTo(ref object What = Type.Missing, ref object Which = Type.Missing, ref object Count = Type.Missing, ref object Name = Type.Missing);
Range GoToEditableRange(ref object EditorID = Type.Missing);
Range GoToNext(WdGoToItem What);
Range GoToPrevious(WdGoToItem What);
C#示例:WordDoc.Application.Selection.GoTo(ref what, ref which, ref count, ref name);
1. expression 必需。该表达式返回“应用于”列表中的一个对象。
2. What Variant 类型,可选。指定区域或所选内容要移动到的项的类别。可以是下列 WdGoToItem 常量之一。
[1]wdGoToBookmark 书签
[2]wdGoToComment
[3]wdGoToEndnote 尾注
[4]wdGoToEquation
[5]wdGoToField
[6]wdGoToFootnote 脚注
[7]wdGoToGrammaticalError
[8]wdGoToGraphic
[9]wdGoToHeading 标题
[10]wdGoToLine 行
[11]wdGoToObject
[12]wdGoToPage 页
[13]wdGoToPercent
[14]wdGoToProofreadingError
[15]wdGoToRevision
[16]wdGoToSection
[17]wdGoToSpellingError
[18]wdGoToTable 表格
3. Which Variant 类型,可选。指定区域或所选内容要移动到的项。可以是下列 WdGoToDirection 常量之一。
[1]wdGoToAbsolute 绝对位置
[2]wdGoToFirst 第一个位置
[3]wdGoToLast 最后一个位置
[4]wdGoToNext 下一个位置
[5]wdGoToPrevious 前一个位置
[6]wdGoToRelative 相对当前的位置下移
下列示例功能相等,都将所选内容移动到文档中的第一个标题。
//将光标移动到第一个标题位置
//方式1
object what = WdGoToItem.wdGoToHeading;
object which = WdGoToDirection.wdGoToFirst;
WordDoc.Application.Selection.GoTo(ref what, ref which);
//方式2
object what = WdGoToItem.wdGoToHeading;
object which = WdGoToDirection.wdGoToAbsolute;
object count = ;
WordDoc.Application.Selection.GoTo(ref what, ref which, ref count);
4. Count Variant 类型,可选。文档中的项数。默认值是 1。下面的示例将所选内容移至文档中的第三行。
//将光标移动到第三行位置
object what = WdGoToItem.wdGoToLine;
object which = WdGoToDirection.wdGoToAbsolute;
object count = ;
WordDoc.Application.Selection.GoTo(ref what, ref which, ref count);
只有正数是有效的。若要指定一个在该区域或所选内容之前的项,可将 Which参数指定为 wdGoToPrevious,并指定一个 Count 值。下面的示例将所选内容向上移动两行。
//将光标前移动两行位置
object what = WdGoToItem.wdGoToLine;
object which = WdGoToDirection.wdGoToPrevious;
object count = 2;
WordDoc.Application.Selection.GoTo(ref what, ref which, ref count);
5. Name Variant 类型,可选。如果 What参数是 wdGoToBookmark、wdGoToComment、wdGoToField 或 wdGoToObject,则本参数指定名称。
//将光标前移动移至下一个 DATE 域。
object what = WdGoToItem.wdGoToField;
object which = System.Reflection.Missing.Value;
object count = System.Reflection.Missing.Value;
object name = "Date";
WordDoc.Application.Selection.GoTo(ref what, ref which, ref count, ref name);
注意: 将 GoTo方法用于 wdGoToGrammaticalError、wdGoToProofreadingError 或 wdGoToSpellingError 常量时,返回的 Range对象中包括所有含语法或拼写错误文本。
示例:
将所选内容移至下一个表格的第一个单元格。
//将光标前移动移至下一个表格的第一个单元格。
object what = WdGoToItem.wdGoToTable;
object which = WdGoToDirection.wdGoToNext;
WordDoc.Application.Selection.GoTo(ref what, ref which);
本示例将插入点移至活动文档第五个尾注引用标记的前面。
if(WordDoc.Endnotes.Count >= )
{
//将光标前移动移至活动文档第五个尾注引用标记的前面。
object what = WdGoToItem.wdGoToEndnote;
object which = WdGoToDirection.wdGoToAbsolute;
object count = ;
WordDoc.Application.Selection.GoTo(ref what, ref which, ref count);
}
本示例将range设置为等于活动文档中第一个脚注引用标记。
if(WordDoc.Footnotes.Count >= )
{
//将光标前移动移至活动文档第五个尾注引用标记的前面。
object what = WdGoToItem.wdGoToFootnote;
object which = WdGoToDirection.wdGoToFirst;
Range range = WordDoc.Application.Selection.GoTo(ref what, ref which); object unit = wdCharacter;
range.Expand(ref unit);
}
本示例将所选内容向下移动四行。
//将光标后移动三行位置
object what = WdGoToItem.wdGoToLine;
object which = WdGoToDirection.wdGoToRelative;
object count = ;
WordDoc.Application.Selection.GoTo(ref what, ref which, ref count);
本示例将所选内容向后移动两页。
//将光标前移动两页位置
object what = WdGoToItem.wdGoToPage;
object which = WdGoToDirection.wdGoToPrevious;
object count = ;
WordDoc.Application.Selection.GoTo(ref what, ref which, ref count);
C# 之 Word光标移动 GoTo 方法的更多相关文章
- C#控制定位Word光标移动到任意行或者最后一行,取得光标位置等操作
C#控制定位Word光标移动到任意行或者最后一行,取得光标位置等操作 http://blog.csdn.net/jglie/article/details/7394256 十一.上下左右移动光标位 p ...
- C#实现通过模板自动创建Word文档的方法
原文地址:http://www.jb51.net/article/55332.htm 本文实例讲述了C#实现通过模板自动创建Word文档的方法,是非常实用的技巧.分享给大家供大家参考.具体实现方法 ...
- Centos7 KDE 桌面Konsole 光标错位解决方法
在使用linux 系统,桌面为KDE 时,在使用Konsole 时,光标的位置是错位的. 如下图效果 解决办法 用命令进入/home/cfox/.kde/share/apps/konsole 修改S ...
- Word中划线的方法(五种)
Word中划线的方法(五种): 1. 按CTRL+F9,在出现的黑底花括号内,如图输入内容, 最后按SHIFT+F9(或者右键菜单点切换域代码),以后可以反复按ALT+F9在代码与结果之间切换. 注: ...
- PHP网页导出Word文档的方法分离
今天要探讨的是PHP网页导出Word文档的方法,使用其他语言的朋友也可以参考,因为原理是差不多的. 原理 一般,有2种方法可以导出doc文档,一种是使用com,并且作为php的一个扩展库安装到服务器上 ...
- PCB 批量Word转PDF实现方法
自上次公司电脑中毒带来的影响,导致系统自动生成的Word档PCB出货报告,通过公司邮件服务器以附件的方式发送给客户后,客户是无法打开或打开缓慢的现象,如果将Word档转为PDF后在客户端是可以正常打开 ...
- C#操作word的一些基本方法(word打印,插入文件,插入图片,定位页眉页脚,去掉横线)
Microsoft.Office.Interop.Word.Application wordApp = new ApplicationClass() word对象 2. Microsoft.Offic ...
- C#将Word转换成PDF方法总结(基于Office和WPS两种方案)
有时候,我们需要在线上预览word文档,当然我们可以用NPOI抽出Word中的文字和表格,然后显示到网页上面,但是这样会丢失掉Word中原有的格式和图片.一个比较好的办法就是将word转换成pdf,然 ...
- .net导出Word的一种方法
由于ActiveX控件只支持IE(好像FF可以通过安装插件支持),所以js导出word的方式就比较局限 可是如果当页面经过js修改以后,.net是无法获取到的,所以要通过js获取到最新的html并传给 ...
随机推荐
- @Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction区别 .(转)
mvc renderaction renderpartial 杂谈 Html.RenderPartial与Html.RenderAction这两个方法都是用来在界面上嵌入用户控件的. ...
- TortoiseSVN中分支和合并实践
使用svn几年了,一直对分支和合并敬而远之,一来是因为分支的管理不该我操心,二来即使涉及到分支的管理,也不敢贸然使用合并功能,生怕合并出了问题对团队造成不良影响,最主要的原因是,自己对分支的目的和合并 ...
- [Bhatia.Matrix Analysis.Solutions to Exercises and Problems]ExI.5.10
Every $k\times k$ positive matrix $A=(a_{ij})$ can be realised as a Gram matrix, i.e., vectors $x_j$ ...
- linux防火墙启动、停止、查看
停止防火墙 service iptables stop 启动防火墙 service iptables start 查看防火墙配置 iptables -L -n 修改的内容只是暂时保存在内存中,如果重启 ...
- Linux新手必看:浅谈如何学习linux
本文在Creative Commons许可证下发布 一.起步 首先,应该为自己创造一个学习linux的环境--在电脑上装一个linux或unix问题1:版本的选择 北美用redhat,欧洲用SuSE, ...
- 多线程之RunLoop
*:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...
- 【DOM】2.闭包
1.什么是闭包? 函数嵌套函数 内部函数可以引用外部函数的参数和变量 参数和变量不会被JS中的垃圾回收机制 所收回 2.闭包有啥好处?应用在哪? ①希望一个变量长期驻扎在内存中 ②避免全局变量的污染 ...
- 由一位坛友的布局想到的定位问题:absolute和relative
坛友的问题和相关代码如下: 看看下面的代码.运行有问题.但是如果我把 style=”position:absolute; top:20px;left:10px改成 style=”float:left; ...
- HIbernate学习笔记(二) hibernate对象的三种状态与核心开发接口
1.在hibernate中持久化对象有三个状态,这个面试时可能会问到: (1)transient瞬时态:在数据库中没有与之匹配的数据,一般就是只new出了这个对象,并且在session缓存中也没有即此 ...
- 谈谈Nginx有哪些特点
1.热部署 我个人觉得这个很不错.在master管理进程与worker工作进程的分离设计,使的Nginx具有热部署的功能,那么在7×24小时不间断服务的前提下,升级Nginx的可执行文件 ...