Как добавить пользовательские свойства в документ Word с помощью.NET 4?

Используя.NET 4, как добавить пользовательские свойства в документ?

Я предполагаю, что это выглядит примерно так:

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

Я не могу найти документацию для этого, которая относится к.NET4/interops v14.

3 ответа

Решение

Чтобы понять это, потребовалось немало догадок (гораздо больше, чем 12-минутная стоимость!)

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

Я не смог найти приличное перечисление для типов, поэтому я вытащил волшебное число "4" из сообщения на форуме для string и это работает...

Для обычных браузеров это было сложно, потому что CustomDocumentProperties является динамическим, поэтому я не получаю Intellisense. И по какой-то причине я не могу найти документы по этому вопросу.

Магия № 4 не та магия. Вот перечисление, которое вы можете использовать: (часть microsoft.office.core)

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

Используйте DSO-файл для чтения / записи пользовательских свойств документов Office. На самом деле файл DSO работает с любым форматом файла. DSO - это средство чтения свойств файла OLE поддержки Microsoft для чтения и записи свойств документов файлов Microsoft Word, Microsoft Excel, Microsoft PowerPoint и Microsoft Visio, независимо от приложения, создавшего файл. Пример приложения также включен в эту загрузку. Пожалуйста, попробуйте это:) DSO File Download.

Другие вопросы по тегам