首页 > 编程语言 >C# 在Word文档级自定义中选择一个区域 使用VSTO外接程序选择范围

C# 在Word文档级自定义中选择一个区域 使用VSTO外接程序选择范围

时间:2023-09-04 16:24:59浏览次数:38  
标签:选择 Word 自定义 C# Content Range 文档 Select 范围

你可以使用Range对象在Microsoft Office Word文档中定义和选择范围。有多种方法可以选择整个文档,例如使用Select方法和Range对象,或者使用文档级自定义和Document类的Content属性。

适用于:本主题中的信息适用于Word的文档级项目和VSTO外接程序项目。有关详细信息,请参阅Office应用程序和项目类型提供的功能。

定义范围: 下面的示例演示了如何创建一个新的Range对象,它包括活动文档中的前七个字符,包括非打印字符。然后它选择了范围内的文本。

在文档级自定义中定义范围: 通过将开始和结束字符传递给Document类的Range方法,将范围添加到文档中。要使用此代码示例,请在项目的ThisDocument类中运行它。

object start = 0; object end = 7; Word.Range rng = this.Range(ref start, ref end);
rng.Select();

通过使用VSTO外接程序定义范围: 通过将开始和结束字符传递给Document类的Range方法,将范围添加到文档中。下面的代码示例向活动文档添加了一个范围。要使用此代码示例,请在项目的ThisAddIn类中运行它。

Word.Range rng = this.Application.ActiveDocument.Range(0, 7);
rng.Select();

在文档级自定义中选择一个区域: 下面的示例演示了如何使用Range对象的Select方法或使用Document类的Content属性选择整个文档。

通过使用Select方法选择整个文档作为范围: 使用包含整个文档的Range的Select方法。要使用下面的代码示例,请在项目的ThisDocument类中运行它。

object start = this.Content.Start; object end = this.Content.End;
this.Range(ref start, ref end).Select();

通过使用Content属性选择整个文档作为范围: 使用Content属性定义包含整个文档的范围。

this.Content.Select();

你还可以使用其他对象的方法和属性来定义范围。

在活动文档中选择一个句子: 通过使用Sentences集合设置范围。使用要选择的句子的索引。

 Word.Range s2 = this.Sentences[2]; s2.Select();

选择句子的另一种方法是手动设置范围的开始和结束值。

通过手动设置开始和结束值来选择一个句子: 创建一个范围变量。

Word.Range rng;

检查文档中是否至少有两个句子,设置该区域的Start和End参数,然后选择该区域。

if (this.Sentences.Count >= 2) { 
    object startLocation = this.Sentences[2].Start; object endLocation = this.Sentences[2].End;
    // 为范围提供开始和结束值。
    rng = this.Range(ref startLocation, ref endLocation);
    // 选择该范围。
    rng.Select();
}

 

使用VSTO外接程序选择范围: 下面的示例演示了如何通过使用Range对象的Select方法或使用Document类的Content属性来选择整个文档。

通过使用Select方法选择整个文档作为范围: 使用包含整个文档的Range的Select方法。下面的代码示例选择了活动文档的内容。要使用此代码示例,请在项目的ThisAddIn类中运行它。

this.Application.ActiveDocument.Range( this.Application.ActiveDocument.Content.Start, this.Application.ActiveDocument.Content.End).Select();

通过使用Content属性选择整个文档作为范围: 使用Content属性定义包含整个文档的范围。

this.Application.ActiveDocument.Content.Select();

你还可以使用其他对象的方法和属性来定义范围。

Word.Range s2 = this.Application.ActiveDocument.Sentences[2]; s2.Select();

选择句子的另一种方法是手动设置范围的开始和结束值。

通过手动设置开始和结束值来选择一个句子: 创建一个范围变量。

Word.Range rng;

检查文档中是否至少有两个句子,设置该区域的Start和End参数,然后选择该区域。

Word.Document document = this.Application.ActiveDocument;
if (document.Sentences.Count >= 2) { 
    object startLocation = document.Sentences[2].Start; object endLocation = document.Sentences[2].End;
    // 为范围提供开始和结束值。
    rng = document.Range(ref startLocation, ref endLocation);
    // 选择该范围。
    rng.Select();
}

标签:选择,Word,自定义,C#,Content,Range,文档,Select,范围
From: https://www.cnblogs.com/guangzhiruijie/p/17677380.html

相关文章

  • centos下手动编译Qt应用程序
    centos7下手动编译Qt5的程序需要Qt5的源代码编译出Qt5在linux下的可执行环境,怎么编译这个以后再说我这里编译的版本是5.9.9然后,将这个环境拷贝到centos某个目录下,我放到主目录下设置环境变量编写一个文本文件叫qt-5.9.9-env,内容是exportPATH=/home/fan/qt-5.9.9/bin:$PATHe......
  • 泛微E-Office init.php文件上传漏洞
    漏洞简介泛微E-Officeinit.php文件存在任意文件上传漏洞,攻击者可以通过该漏洞直接获取网站权限。漏洞复现fofa语法:app="泛微-EOffice"登录页面如下:POC:POST/E-mobile/App/init.phpHTTP/1.1Host:User-Agent:Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/53......
  • 泛微E-Office UploadFile.php任意文件上传漏洞 CNVD-2021-49104
    漏洞描述在/general/index/UploadFile.php中上传文件过滤不严格导致允许无限制地上传文件,攻击者可以通过该漏洞直接获取网站权限漏洞复现fofa语法:app="泛微-EOffice"登录页面如下:POC:POST/general/index/UploadFile.php?m=uploadPicture&uploadType=eoffice_logo&userId=H......
  • SBG修改输出电压+SLOSC修改输出频率
    问题解决1·在带隙输出电压已知的条件下,如何多输出一路更小的电压?​ 如上图所示,如果在原输出电压支路上利用电阻分压的形式得到所想要的较小电压值,则其温度系数不好,原因在于,零温度系数电压由$$IPTAT*RES(原)+VBE$$得出,电阻分压,相当与削减了正温度系数相关的电压,自然温度系数......
  • 泛微E-cology XXE漏洞复现(QVD-2023-16177)
    漏洞概述泛微e-cology某处功能点最初针对用户输入的过滤不太完善,导致在处理用户输入时可触发XXE。后续修复规则依旧可被绕过,本次漏洞即为之前修复规则的绕过。攻击者可利用该漏洞列目录、读取文件,甚至可能获取应用系统的管理员权限。影响版本泛微EC9.x且补丁版本<10.58.2......
  • cross-env的理解
    1、什么是cross-env?它是运行跨平台设置和使用环境变量(Node中的环境变量)的脚本。2、cross-env的作用是什么?当我们使用NODE_ENV=production来设置环境变量的时候,大多数windows命令会提示将会阻塞或者异常,或者,windows不支持NODE_ENV=development的这样的设置方式,会报错。因......
  • 泛微E-cology9 browser.jsp SQL注入漏洞QVD-2023-5012
    漏洞简介泛微e-cology9存在SQL注入漏洞,攻击者可利用该漏洞获取数据库敏感信息。影响版本泛微e-cologyV9<10.56漏洞复现fofa语法:app="泛微-协同商务系统"登录页面:POC:POST/mobile/%20/plugin/browser.jspHTTP/1.1Host:115.236.39.115:8088User-Agent:Mozilla/5.0(W......
  • 如何通过C++开发高效的机器人控制程序
    如何通过C++开发高效的机器人控制程序导语:随着人工智能和机器人技术的不断发展,机器人控制程序的开发变得越来越重要。本文将介绍如何使用C++语言开发高效的机器人控制程序,并提供一些代码示例。一、了解机器人的控制原理在开始开发机器人控制程序之前,首先需要了解机器人的控制原......
  • [CF1599A] Weights
    题目描述Youaregivenanarray$A$oflength$N$weightsofmasses$A_1$,$A_2$...$A_N$.Notwoweightshavethesamemass.Youcanputeveryweightononesideofthebalance(leftorright).Youdon'thavetoputweightsinorder$A_1$......
  • Spring事务配置笔记(实现不同Service间调用事务)
    作者:fbysss关键字:Spring,事务处理一、关键配置示例:<beanid="sessionFactory"class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"><propertyname="dataSource&qu......