Interop.Word 不显示实际语言

Interop.Word does not show actual language

我在 MS Word 中将语言从英语(美国)更改为英语(英国):

然后单击加载项上的按钮,运行以下代码以读取语言:

var appLanguage = Globals.ThisAddIn.Application.Language;
var docLanguage = Globals.ThisAddIn.Application.ActiveDocument.Content.LanguageID;
Debug.WriteLine($"Application.Language: {appLanguage.ToString()}");
Debug.WriteLine($"Content.LanguageID: {docLanguage.ToString()}");

输出:

Application.Language: msoLanguageIDEnglishUS
Content.LanguageID: wdEnglishUS

如您所见,它说语言仍然是英语(美国)。

如何正确阅读文档语言?

尝试使用范围 class 的 LanguageID

ActiveDocument.Range.LanguageID

此外,我建议在 Word 中使用 VBA 宏录制器,以确保在更改文档语言时应使用哪个 属性。