首页 > 解决方案 > 是否可以在 vb.net for Office 中获取当前显示测量单位?

问题描述

在我的 Office 的 VSTO 加载项中,了解用户为其界面选择的测量单位对我很有用(具体来说,加载项需要知道 Word 文档中的标尺是否以英寸或厘米或其他测量单位)。是否可以使用 VB.NET 检索此信息?我可以使用以下内容检索当前系统语言或界面语言:

System.Globalization.CultureInfo.CurrentCulture
My.Application.Culture
My.Application.UICulture

似乎我可以获得有关当前系统文化是否为公制的信息:

System.Globalization.RegionInfo.CurrentRegion.IsMetric

但是,这不一定与 Word 文档中选择的显示单位相对应,可以从“显示”部分下的“ Word 选项”对话框中设置(“以单位显示测量值:”下拉菜单)。有没有办法使用 vb.net 检索这个?

标签: vb.net

解决方案


我不知道去哪里找这个。但是,我确实有一个过去曾在 Word/Office VBA API 中查找随机设置的过程。

我所做的是使用“录制宏”功能来查看当我更改相关设置时会生成什么代码。然后我可以使用参考该代码来知道要检查什么。

在这个问题上使用该过程将英寸更改为厘米会生成以下代码:

Options.MeasurementUnit = wdCentimeters

然后我修改了宏以提醒Options.MeasurementUnit

MsgBox(Options.MeasurementUnit)

结果是1。我将它改回“英寸”并再次运行它,我看到了一个0. 您可以继续此操作以在该设置的下拉列表中找到每个项目的正确值。


推荐阅读