对于 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 方法的更多相关文章

  1. C#控制定位Word光标移动到任意行或者最后一行,取得光标位置等操作

    C#控制定位Word光标移动到任意行或者最后一行,取得光标位置等操作 http://blog.csdn.net/jglie/article/details/7394256 十一.上下左右移动光标位 p ...

  2. C#实现通过模板自动创建Word文档的方法

    原文地址:http://www.jb51.net/article/55332.htm   本文实例讲述了C#实现通过模板自动创建Word文档的方法,是非常实用的技巧.分享给大家供大家参考.具体实现方法 ...

  3. Centos7 KDE 桌面Konsole 光标错位解决方法

    在使用linux 系统,桌面为KDE 时,在使用Konsole 时,光标的位置是错位的. 如下图效果  解决办法 用命令进入/home/cfox/.kde/share/apps/konsole 修改S ...

  4. Word中划线的方法(五种)

    Word中划线的方法(五种): 1. 按CTRL+F9,在出现的黑底花括号内,如图输入内容, 最后按SHIFT+F9(或者右键菜单点切换域代码),以后可以反复按ALT+F9在代码与结果之间切换. 注: ...

  5. PHP网页导出Word文档的方法分离

    今天要探讨的是PHP网页导出Word文档的方法,使用其他语言的朋友也可以参考,因为原理是差不多的. 原理 一般,有2种方法可以导出doc文档,一种是使用com,并且作为php的一个扩展库安装到服务器上 ...

  6. PCB 批量Word转PDF实现方法

    自上次公司电脑中毒带来的影响,导致系统自动生成的Word档PCB出货报告,通过公司邮件服务器以附件的方式发送给客户后,客户是无法打开或打开缓慢的现象,如果将Word档转为PDF后在客户端是可以正常打开 ...

  7. C#操作word的一些基本方法(word打印,插入文件,插入图片,定位页眉页脚,去掉横线)

    Microsoft.Office.Interop.Word.Application wordApp = new ApplicationClass() word对象 2. Microsoft.Offic ...

  8. C#将Word转换成PDF方法总结(基于Office和WPS两种方案)

    有时候,我们需要在线上预览word文档,当然我们可以用NPOI抽出Word中的文字和表格,然后显示到网页上面,但是这样会丢失掉Word中原有的格式和图片.一个比较好的办法就是将word转换成pdf,然 ...

  9. .net导出Word的一种方法

    由于ActiveX控件只支持IE(好像FF可以通过安装插件支持),所以js导出word的方式就比较局限 可是如果当页面经过js修改以后,.net是无法获取到的,所以要通过js获取到最新的html并传给 ...

随机推荐

  1. NET下RabbitMQ实践[WCF发布篇]

    在之前的两篇文章中,主要介绍了RabbitMQ环境配置,简单示例的编写.今天将会介绍如何使用WCF将RabbitMQ列队以服务的方式进行发布.          注:因为RabbitMQ的官方.net ...

  2. 【js与jquery】电子邮箱、手机号、邮政编码的正则验证

    //验证邮政编码 $("#postcode").blur(function(){ //获取邮政编码 var postcode=$("#postcode").va ...

  3. ZOJ 3264 Present for MM

    寒假开始了···但是做题没有结束嘤··· 然后是dp专场嘤··· 题意:背包问题,给出背包容量和物品对数,每对物品都有特殊的关系:第一种关系是两个物品都取有价值,若只取一个则失去价值:第二种是两个物品 ...

  4. NOIP2005 谁拿了最多奖学金

    1谁拿了最多奖学金 (scholar.pas/c/cpp) [问题描述] 某校的惯例是在每学期的期末考试之后发放奖学金.发放的奖学金共有五种,获取的条件各自不同: 1)     院士奖学金,每人800 ...

  5. leetcode@ [279]Perfect Squares

    https://leetcode.com/problems/perfect-squares/ Given a positive integer n, find the least number of ...

  6. SPOJ-7001 VLATTICE 莫比乌斯反演定理

    题目链接:http://www.spoj.com/problems/VLATTICE/ 题意:求gcd(x,y,z)=1,1<=x,y,z<=n,的个数. 开始做的时候枚举gcd(x,y) ...

  7. Java语言速览:StackOverflow

    关于 java Java(请不要与 JavaScript 搞混)是一种设计为与 Java 虚拟机 (JVM) 一起使用的多用途编程语言.一般将安装了相关工具可以开发并运行 Java 程序的电脑系统称为 ...

  8. A Tour of Go Buffered Channels

    Channels can be buffered. Provide the buffer length as the second argument to make to initialize a b ...

  9. python 使用__slots__

    正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性.先定义class: >>> class Studen ...

  10. keil编译STM32工程时 #error directive: "Please select first the target STM32F10x device used in your application (in stm32f10x.h file)"

    我们可以双击错误,然后会自动定位到文件 stm32f10x.h 中出错的地方,可以看到代码: #if !defined (STM32F10X_LD) && !defined (STM3 ...