【发布时间】:2012-03-07 10:07:54
【问题描述】:
我正在尝试使用 word 自动更正一些非英文文本,问题是当我使用 SpellCheck 功能时,会弹出“拼写和语法”对话框并等待用户输入,我想要文本自动更正。所以我的问题是如何解决这个问题?
using System.Collections.Generic;
using Microsoft.Office.Interop.Word;
using Word = Microsoft.Office.Interop.Word;
using TobyCL.ro.toby.StringOperations;
namespace namespace.ro.toby
{
class WordProofing:IProof
{
private readonly Word.Application _wordApp;
private readonly Word.Document _wordDoc;
private static object _oEndOfDoc = "\\endofdoc";
public WordProofing()
{
_wordApp = new Word.Application {Visible = false};
_wordDoc = _wordApp.Documents.Add();
}
public void Close()
{
object obj = Word.WdSaveOptions.wdDoNotSaveChanges;
_wordDoc.Close(ref obj);
_wordApp.Quit(ref obj);
}
#region Implementation of IProof
public string Proof(string proofText)
{
Range wRng = _wordDoc.Bookmarks.get_Item(ref _oEndOfDoc).Range;
wRng.Text = proofText;
_wordDoc.CheckSpelling(IgnoreUppercase: true,AlwaysSuggest:false);
string str = wRng.Text;
wRng.Text = "";
return str;
}
#endregion
}
}
我几天前写了这段代码,它工作正常。问题是我卸载了校对工具来运行一些测试,现在我不断收到那个对话框,所以我想我可能必须设置一些 Word 设置,或者我在不知道的情况下更改了代码中的某些内容。任何帮助将不胜感激。
我正在使用 Microsoft Office Word 2010
【问题讨论】:
标签: c# .net ms-word interop spell-checking