获取 Word 保存提示的用户响应?

Get user response of Word save prompt?

背景: 我正在 Visual Studio 2015 年使用 Visual Basic 创建一个 VSTO Word 加载项。

问题:关闭文档时,我希望提示用户保存它。下面是我经常看到并且我想使用的标准命令:

thisDoc.Close(Word.WdSaveOptions.wdPromptToSaveChanges)

但是,我想将用户选择的选项(即是、否或取消)存储在变量中。我该怎么做?

我知道如何使用消息框(请参阅下面的代码)执行此操作,但更愿意使用 wdPromptToSaveChanges。

Dim userSaveResponse As MsgBoxResult = MsgBox("Do you want to save this doc?", vbYesNoCancel)

Close 没有 return 任何东西,而且我不知道在保存期间更改的任何字段,除了 Document.Saved(如果为 false,不会告诉您它是否a 否或取消),但此时文档已关闭,可能无法访问。

您可以做的一件事是调用 thisDoc.Save(),如果用户取消它(或发生任何其他错误),将抛出 COMException。否则成功。