Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Перечисленные выше приложения Microsoft Office предоставляют встроенные свойства, которые хранятся в документах. Кроме того, можно создавать и изменять настраиваемые свойства документа при наличии дополнительных сведений, которые необходимо хранить вместе с документом.
Область применения: сведения в этом разделе относятся к проектам на уровне документа и проектам надстроек VSTO для следующих приложений: Excel; Powerpoint; Проекта; Слово. Дополнительные сведения см. в разделе "Функции", доступные по Приложение Office ликации и типу проекта.
Используйте свойство CustomDocumentProperties документа для работы с пользовательскими свойствами. Например, в проекте уровня документа для Microsoft Office Excel используйте свойство CustomDocumentProperties класса ThisWorkbook
. В проекте надстройки VSTO для Excel используйте свойство CustomDocumentProperties объекта Workbook . Эти свойства возвращают объект DocumentProperties , который представляет собой коллекцию объектов DocumentProperty . Для извлечения конкретного свойства по имени или по индексу в коллекции можно использовать свойство Item
коллекции.
В следующем примере показано, как добавить пользовательское свойство в настройку уровня документа для Excel и присвоить ему значение.
Пример
void TestProperties()
{
Microsoft.Office.Core.DocumentProperties properties;
properties = (Office.DocumentProperties)this.CustomDocumentProperties;
if (ReadDocumentProperty("Project Name") != null)
{
properties["Project Name"].Delete();
}
properties.Add("Project Name", false,
Microsoft.Office.Core.MsoDocProperties.msoPropertyTypeString,
"White Papers");
}
private string ReadDocumentProperty(string propertyName)
{
Office.DocumentProperties properties;
properties = (Office.DocumentProperties)this.CustomDocumentProperties;
foreach (Office.DocumentProperty prop in properties)
{
if (prop.Name == propertyName)
{
return prop.Value.ToString();
}
}
return null;
}
Отказоустойчивость
При попытке доступа к свойству Value
для неопределенного свойства возникает исключение.