Я пишу надстройку VSTO PowerPoint. Одна из вещей, которую я хотел бы достичь, - это возможность обновлять пользовательские свойства программно с помощью C #.
Если я свяжу пользовательское свойство с текстовым полем (используя графический интерфейс), я смогу отобразить значение свойства на слайде - см. Два изображения ниже.
Если я хочу изменить другие существующие свойства, которые не связаны, он работает, как ожидается, используя этот код:
doc.CustomDocumentProperties[propName].Value = propValue;
Однако для связанных свойств значение не изменяется. В Excel я смог изменить значение, перейдя по ссылке, установленной в свойстве
DocumentProperty property = doc.CustomDocumentProperties[propName];
if (property != null && property.LinkToContent && property.LinkSource != null)
{
workbook.Names.Item(property.LinkSource).RefersToRange.Value = propValue;
}
Однако я не могу найти что-то подобное в PowerPoint.
Кроме того, мне было интересно, смогу ли я решить эту проблему, удалив пользовательское свойство, а затем воссоздав его с новым значением. Но я не могу найти способ удалить пользовательское свойство.