如果的打开Word文档是Visible参数设为false你会得不到Selection实体

本文主要是介绍如果的打开Word文档是Visible参数设为false你会得不到Selection实体,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

以下是异常重现代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using Word = Microsoft.Office.Interop.Word;
using Microsoft.Win32;namespace WpfApplication5
{/// <summary>/// Interaction logic for MainWindow.xaml/// </summary>public partial class MainWindow : Window{List<string> words = new List<string>();public MainWindow(){InitializeComponent();words.Add("me");words.Add("you");words.Add("us");}private void button1_Click(object sender, RoutedEventArgs e){Word.Application objApplication = new Word.Application();OpenFileDialog objOpenFileDialog = new OpenFileDialog();objOpenFileDialog.Filter = "Word document (*.docx)|*.docx";objOpenFileDialog.ShowDialog();object strPath = objOpenFileDialog.FileName;object flag = false;//object nflag = true;var missing = Type.Missing;Word.Document objDocument = objApplication.Documents.Open(ref strPath, ref missing, ref flag, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref flag, ref missing, ref missing, ref missing, ref missing);try{foreach (string word in words){SelectionFind(word, objApplication);}}catch{}finally{objDocument.Save();((Word._Application)objApplication).Quit();}}private void SelectionFind(string word, Word.Application objApplication){try{objApplication.Selection.Find.ClearFormatting();}catch{}objApplication.Visible = false;try{objApplication.Selection.Find.Replacement.ClearFormatting();}catch{}objApplication.Selection.Find.Replacement.Highlight = 1;objApplication.Selection.Find.Text = word;objApplication.Selection.Find.Replacement.Text = word;objApplication.Selection.Find.Forward = true;objApplication.Selection.Find.Wrap = Word.WdFindWrap.wdFindContinue;objApplication.Selection.Find.Format = true;objApplication.Selection.Find.MatchCase = false;objApplication.Selection.Find.MatchWholeWord = false;objApplication.Selection.Find.MatchWildcards = false;objApplication.Selection.Find.MatchSoundsLike = false;objApplication.Selection.Find.MatchAllWordForms = false;objApplication.Selection.Find.Execute(Replace: Word.WdReplace.wdReplaceAll);objApplication.Options.DefaultHighlightColorIndex = Word.WdColorIndex.wdYellow;objApplication.Selection.Range.HighlightColorIndex = Word.WdColorIndex.wdYellow;}}
}


这篇关于如果的打开Word文档是Visible参数设为false你会得不到Selection实体的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/948280

相关文章

Java线程池核心参数原理及使用指南

《Java线程池核心参数原理及使用指南》本文详细介绍了Java线程池的基本概念、核心类、核心参数、工作原理、常见类型以及最佳实践,通过理解每个参数的含义和工作原理,可以更好地配置线程池,提高系统性能,... 目录一、线程池概述1.1 什么是线程池1.2 线程池的优势二、线程池核心类三、ThreadPoolE

Python自动化提取多个Word文档的文本

《Python自动化提取多个Word文档的文本》在日常工作和学习中,我们经常需要处理大量的Word文档,本文将深入探讨如何利用Python批量提取Word文档中的文本内容,帮助你解放生产力,感兴趣的小... 目录为什么需要批量提取Word文档文本批量提取Word文本的核心技术与工具安装 Spire.Doc

C#高效实现在Word文档中自动化创建图表的可视化方案

《C#高效实现在Word文档中自动化创建图表的可视化方案》本文将深入探讨如何利用C#,结合一款功能强大的第三方库,实现在Word文档中自动化创建图表,为你的数据呈现和报告生成提供一套实用且高效的解决方... 目录Word文档图表自动化:为什么选择C#?从零开始:C#实现Word文档图表的基本步骤深度优化:C

Qt实现对Word网页的读取功能

《Qt实现对Word网页的读取功能》文章介绍了几种在Qt中实现Word文档(.docx/.doc)读写功能的方法,包括基于QAxObject的COM接口调用、DOCX模板替换及跨平台解决方案,重点讨论... 目录1. 核心实现方式2. 基于QAxObject的COM接口调用(Windows专用)2.1 环境

使用Python将PDF表格自动提取并写入Word文档表格

《使用Python将PDF表格自动提取并写入Word文档表格》在实际办公与数据处理场景中,PDF文件里的表格往往无法直接复制到Word中,本文将介绍如何使用Python从PDF文件中提取表格数据,并将... 目录引言1. 加载 PDF 文件并准备 Word 文档2. 提取 PDF 表格并创建 Word 表格

C#借助Spire.XLS for .NET实现在Excel中添加文档属性

《C#借助Spire.XLSfor.NET实现在Excel中添加文档属性》在日常的数据处理和项目管理中,Excel文档扮演着举足轻重的角色,本文将深入探讨如何在C#中借助强大的第三方库Spire.... 目录为什么需要程序化添加Excel文档属性使用Spire.XLS for .NET库实现文档属性管理Sp

Python轻松实现Word到Markdown的转换

《Python轻松实现Word到Markdown的转换》在文档管理、内容发布等场景中,将Word转换为Markdown格式是常见需求,本文将介绍如何使用FreeSpire.DocforPython实现... 目录一、工具简介二、核心转换实现1. 基础单文件转换2. 批量转换Word文件三、工具特性分析优点局

Java使用Spire.Doc for Java实现Word自动化插入图片

《Java使用Spire.DocforJava实现Word自动化插入图片》在日常工作中,Word文档是不可或缺的工具,而图片作为信息传达的重要载体,其在文档中的插入与布局显得尤为关键,下面我们就来... 目录1. Spire.Doc for Java库介绍与安装2. 使用特定的环绕方式插入图片3. 在指定位

Java利用Spire.Doc for Java实现在模板的基础上创建Word文档

《Java利用Spire.DocforJava实现在模板的基础上创建Word文档》在日常开发中,我们经常需要根据特定数据动态生成Word文档,本文将深入探讨如何利用强大的Java库Spire.Do... 目录1. Spire.Doc for Java 库介绍与安装特点与优势Maven 依赖配置2. 通过替换

C#实现插入与删除Word文档目录的完整指南

《C#实现插入与删除Word文档目录的完整指南》在日常的办公自动化或文档处理场景中,Word文档的目录扮演着至关重要的角色,本文将深入探讨如何利用强大的第三方库Spire.Docfor.NET,在C#... 目录Spire.Doc for .NET 库:Word 文档处理利器自动化生成:C# 插入 Word