【问题标题】:Enable built-in Microsoft Word button controls with Microsoft.Office.Interop.Word使用 Microsoft.Office.Interop.Word 启用内置 Microsoft Word 按钮控件
【发布时间】:2013-08-05 16:27:19
【问题描述】:

我目前需要将两个 Microsoft Word 文档与Microsoft.Office.Interop.Word 进行比较。我找到了Application.CompareDocument 方法,这正是我想要的。以下 C# 源代码 (sn-p) 将保存在文件系统中的文档与当前活动文档进行比较,并在新文档中打开结果:

using Word = Microsoft.Office.Interop.Word;

// [...]

Word.Document originalDocument = this.application.Documents.Open(filePath, ReadOnly: true, Visible: false);
Word.Document diffDocument = this.application.CompareDocuments(
    originalDocument,
    this.application.ActiveDocument);
((Word._Document)originalDocument).Close(SaveChanges: false);

// TODO Activate two built-in Microsoft Word buttons.

// [...]

但是我还需要在新建的 Word 文档视图中激活两个内置按钮。在 MSDN 上搜索了一段时间后,我无法找到实现我想要的方法。我为这个问题添加了两个屏幕截图,显示了我想要激活的内置按钮(遗憾的是,我使用的是 Microsoft Word 2010 的德语版本,所以我不知道确切的翻译是什么)。

  1. “Quelldokumente anzeigen”(可翻译为“显示源文档”)。我需要激活“Beide anzeigen”按钮(可以翻译为“同时显示”)。

  2. “Überarbeitungsbereich”(可翻译为“修订窗格”)。我需要激活按钮“Überarbeitungsbereich vertikal...”(可以翻译为“垂直修订窗格...”)。

最后,我想知道如何修改这两个按钮的状态(直接或间接通过方法调用)。

编辑 (2013-08-03)

可以通过以下方法设置修订窗格:

diffDocument.ActiveWindow.View.SplitSpecial = Word.WdSpecialPane.wdPaneRevisionsVert;

我仍在寻找同时显示源文档和修改后的文档窗格的解决方案。

编辑 (2013-08-05)

显示源文档按钮可以通过以下方法修改为显示两个源文档:

diffDocument.ActiveWindow.ShowSourceDocuments = Word.WdShowSourceDocuments.wdShowSourceDocumentsBoth;

【问题讨论】:

    标签: c# ms-word vsto ms-office


    【解决方案1】:

    您的问题的可能解决方案:

    广告1.但首先,您需要使用ReadOnly: false打开您的文档,而根据C#和VBA测试,当您将参数设置为ReadOnly: true时它不会起作用:

    ((Word._Document)diffDocument).Windows.CompareSideBySideWith(originalDocument);

    Ad 2.这一次你需要引用Word Application的window对象。这是活动窗口的代码:

    appWRD.ActiveWindow.View.SplitSpecial = Word.WdSpecialPane.wdPaneRevisionsVert;
    

    其中:appWRD 在我的代码中是 Word.Application

    又是广告 1。(以上是误会的结果)。

    根据一些测试,这段代码应该可以满足您的需求:

    appWRD.ActiveWindow.ShowSourceDocuments = Word.WdShowSourceDocuments.wdShowSourceDocumentsBoth;
    

    【讨论】:

    • 广告 2. 确实想要我想要的修订窗格。但是广告 1. 做了一些完全不同的事情:它以所谓的“并排”视图显示文档。这与“比较源文档”按钮背后的功能不同,例如单击“Original anzeigen”(英语“Show original”)时,将显示当前窗口内的新任务窗格。也许还有另一种 View 方法可以做到这一点,但我还没有找到。
    • @FlorianWolters,我会稍后再检查一下,或者......星期一:)
    • 这正是我所需要的!非常感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 2012-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多