将天数转换为int?

Convert a number of days in int?

我正在尝试在 msproject 中编写状态栏,但我一直在寻找一种方法将我的持续时间字符串转换为 int Ms Project returns 字符串,如“8 天”或“8 小时”, 目前,我发现这样做的唯一方法是将我的字符串分成两部分,我将第一部分转换为 int,然后查看我得到的值是 h 还是 D,然后转换它,但问题是如果我改变了我程序的语言,它不再工作了,所以我想知道它是否存在类似的功能 Numberstyle.Currency 持续时间

非常感谢

问题:如何以母语完整显示持续时间单位spelled-out,即使用户选择了缩写。

用户可以控制如何显示持续时间单位。例如 "d"、"dy/dys"、"day/days" 表示以天为单位的持续时间(英语)。要获取完整的 spelled-out 天标签,以用户的语言更改 Project.DayLabelDisplay setting to 2 and use the GetField 方法以获取显示的任务持续时间。

理想情况下,在加载 add-in(或项目)时捕获所有单元类型的值:

  1. 创建一个新项目
  2. Project.DefaultDurationUnits设置为pj分钟
  3. Project.MinuteLabelDisplay 设置为 2
  4. 添加任务,设置持续时间,使用 GetField 获取以分钟为单位的显示持续时间。
  5. 对其余单位类型重复步骤 2-4:Project.HourLabelDisplay, Project.DayLabelDisplay, Project.WeekLabelDisplay, Project.MonthLabelDisplay
  6. 关闭并且不保存项目

或者,您可以只显示用户选择的持续时间。

注意:持续时间可以以年显示(Project.YearLabelDisplay),但默认持续时间单位不能设置为年