2010-03-03 3 views
3

Я нахожусь в моем whits-end с этой проблемой. Я могу успешно связать xml с основной частью документа, однако, похоже, я не могу заставить элементы управления содержимым в заголовке связываться с xml.Binding CustomXml to Headerpart

AddCustomXmlPart, похоже, не существует для Headerpart, и если я попытаюсь добавить CustomXmlPart через hdrpart.AddPart (xmlPart);

Я получаю исключение из-за неправильной операции «Часть не может быть добавлена ​​здесь» и не может использовать hdrpart.AddNewPart(); поскольку CustomXmlPart не является элементом IFixedContentTypePart.

Я провел последние несколько дней, чтобы найти примеры того, как привязывать данные к заголовку, но все это безрезультатно. Существует множество примеров создания новых заголовков, перемещения заголовков и т. Д., Но ничего не связано с привязкой CustomXml к заголовку.

Я надеюсь, что кто-то может пролить свет на это.

Заранее спасибо.

Al

+0

У вас есть решение проблемы или проблема была устранена? – madan

ответ

2

посмотрите на реализацию с использованием отражателя. Там вы можете увидеть, что MainDocumentPart определяет некоторые ограничения относительно частей, которые можно добавить. Эти определения производятся в методе GetPartConstraint() (этот метод получен из OpenXmlPartContainer).

Метод GetPartConstraints() MainDocumentPart определяет, что CustomXmlPart разрешен. Метод GetPartConstraints() в HeaderPart не определяет, что разрешен CustomXmlPart. -> Это причина Исключения.

Я надеюсь, что ответит на ваш вопрос.

С уважением.