C# 之 Word光标移动 GoTo 方法

摘要:
对于文档或范围对象:返回表示指定项目(如页面、书签或字段)的起始位置的范围对象。对于选择对象:将插入点移动到指定项目前面的字符位置,并返回范围对象(wdGoToGrammaticalError、wdGoToProofreadingError或wdGoToSpellingError常量除外)。用法:表达式。GoTo(Wha

  对于 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 = 1;
WordDoc.Application.Selection.GoTo(ref what, ref which, ref count);

4. Count  Variant 类型,可选。文档中的项数。默认值是 1。下面的示例将所选内容移至文档中的第三行。

//将光标移动到第三行位置
object what = WdGoToItem.wdGoToLine;
object which = WdGoToDirection.wdGoToAbsolute;
object count = 3;
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 >= 5)
{
    //将光标前移动移至活动文档第五个尾注引用标记的前面。
    object what = WdGoToItem.wdGoToEndnote;
    object which = WdGoToDirection.wdGoToAbsolute;
    object count = 5;
    WordDoc.Application.Selection.GoTo(ref what, ref which, ref count);
}

本示例将range设置为等于活动文档中第一个脚注引用标记。

if(WordDoc.Footnotes.Count >= 1 )
{
    //将光标前移动移至活动文档第五个尾注引用标记的前面。
    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 = 3;
WordDoc.Application.Selection.GoTo(ref what, ref which, ref count);

本示例将所选内容向后移动两页。

//将光标前移动两页位置
object what = WdGoToItem.wdGoToPage;
object which = WdGoToDirection.wdGoToPrevious;
object count = 2;
WordDoc.Application.Selection.GoTo(ref what, ref which, ref count);

免责声明:文章转载自《C# 之 Word光标移动 GoTo 方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇shell脚本调试技术_转Geoserver的rest接口使用(后台或者前端调实现自动发布服务)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

吐槽下若依(RuoYi)系统的权限系统(shiro和spring-security)

spring-security以RuoYi-Vue为例,当前版本是3.1.0。然后是系统中很多地方用LoginUserloginUser=tokenService.getLoginUser来获取当前用户数据,这个需要再解析token,然后从redis缓存中读取的数据,不明白为什么不直接从SecurityUtils.getLoginUser()中获取,明明已经...

JRebel 6 破解版及使用方法

2.解压下载的jrebel6.0.0-crack.zip、jrebel6.0 jar包和破解文件。假设文件在D:/jrebel步骤:1中解压缩。eclipse下载jrebe插件,可以在市场上下载。2.打开eclipse的窗口首选项jrebel,打开优势选项卡,并将jar包的路径指向D:/jrebel/jrebel.jar。用CMD打开DOS窗口,输入cd/d...

GPU与CPU

GPU和CPU CPU,也称为中央处理单元,主要由控制器、运算单元、寄存器、高速缓冲区和数据/控制/状态总线组成。GPU GPU称为GraphicsProcessingUnit,即图形处理器。GPU最初是为终端游戏设计的。由于对游戏中的大量数据重复相同的操作,GPU面临着类型高度统一、相互依赖的大规模数据。GPU的内核远多于CPU。它向多个内核发送相同的指令...

postgresql笔记

一旦任何有价值的对象被转移到新所有者,可以使用DROPOWNED命令删除被删除角色所拥有的任何剩余对象。此外,DROPOWNED不会删除整个数据库或表空间。因此,如果角色有任何尚未转移到新所有者的数据库或表空间,则需要手动删除它们。DROPOWNED还将注意到,对于不属于目标角色的对象,删除授予目标角色的任何特权。因为REASSIGNOWNED不会接触这些对...

更改nexus的工作目录

默认情况下,nexus的工作目录位于${user_home}/sonatype工作目录中。在Linux中,如果用户是root用户,则使用/root/sonatype。这便于通过war将nexus安装到servlet容器中,但不利于服务器的集中管理。这需要更改默认的nexus工作目录位置。为了方便管理,您可以选择使用环境变量。...

Delete from join 用法

delete(别名)fromtblA(别名)leftjointblb(别名)on。。。...