【问题标题】:How do I add custom properties to a Word doc with .NET 4?如何使用 .NET 4 将自定义属性添加到 Word 文档?
【发布时间】:2012-05-06 17:46:32
【问题描述】:

使用 .NET 4,如何向文档添加自定义属性?

我假设它是这样的:

WordApp // an instance of Microsoft.Office.Interop.Word.Application
  .ActiveDocument
  .CustomDocumentProperties
  .Add...?

我似乎找不到适用于 .NET4/interops v14 的文档。

【问题讨论】:

    标签: .net-4.0 c#-4.0 documentation-generation office-interop


    【解决方案1】:

    我花了很多时间猜测(超过 12 分钟,我不好意思说!)才弄明白:

    WordApp // an instance of Microsoft.Office.Interop.Word.Application
      .ActiveDocument
      .CustomDocumentProperties
      .Add(Name: "PropertyName", 
           LinkToContent: false, 
           Type: 4, 
           Value: "PropertyValue");
    

    我找不到合适的类型枚举,所以我从string 的论坛帖子中挖出了神奇的数字“4”,它可以工作...

    对于休闲浏览器,这很棘手,因为CustomDocumentProperties 是动态的,所以我没有智能感知。由于某种原因,我找不到这方面的文档。

    【讨论】:

    • 在 Word 中转到 VBE (ALT-F11),然后使用其中的帮助菜单搜索 CustomDocumentProperties。
    • CustomDocumentProperties 不包含添加功能信息 :( 我使用的是 Microsoft.Office.Interop.Word.Application .ActiveDocument
    【解决方案2】:

    神奇的数字 4 并不是那么神奇。这是您可以使用的枚举: (microsoft.office.core 的一部分)

    public enum MsoDocProperties
    {
        msoPropertyTypeNumber = 1,
        msoPropertyTypeBoolean = 2,
        msoPropertyTypeDate = 3,
        msoPropertyTypeString = 4,
        msoPropertyTypeFloat = 5,
    }
    

    【讨论】:

      【解决方案3】:

      使用 DSO 文件读取/写入 Office 文档的自定义属性。事实上,DSO 文件适用于任何文件格式。 DSO 是 Microsoft 开发人员支持 OLE 文件属性读取器,用于读取和写入 Microsoft Word、Microsoft Excel、Microsoft PowerPoint 和 Microsoft Visio 文件的文档属性,独立于创建文件的应用程序。此下载还包含一个示例应用程序。请试试这个:) DSO File Download.

      【讨论】:

        猜你喜欢
        • 2012-07-18
        • 2020-09-27
        • 2013-05-15
        • 1970-01-01
        • 2019-03-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多