Как добавить, что содержание управляет, одним словом, 2007 использованием документа OpenXML

Alway используют ключ, который не имеет никакого бизнес-значения. Это - просто хорошая практика.

РЕДАКТИРОВАНИЕ: Я пытался найти ссылку на него онлайн, но я не мог. Однако в 'Шаблоны Предприятия Archtecture' [Fowler] это имеет хорошее объяснение того, почему Вы ничего не должны использовать кроме ключа без значения кроме того, чтобы быть ключом. Это сводится к тому, что это должно иметь одно задание и одно задание только.

6
задан Berkay Turancı 6 December 2012 в 21:10
поделиться

2 ответа

Anoop,

Вы сказали, что можете создать документ с помощью OpenXmlSdk. Исходя из этого предположения, вы можете использовать следующий код для создания элемента управления содержимым для добавления в элемент Wordprocessing.Body вашего документа.

//praragraph to be added to the rich text content control
Run run = new Run(new Text("Insert any text Here") { Space = StaticTextConstants.Preserve });
Paragraph paragraph = new Paragraph(run);

SdtProperties sdtPr = new SdtProperties(
        new Alias { Val = "MyContentCotrol" },
        new Tag { Val = "_myContentControl" });
SdtContentBlock sdtCBlock = new SdtContentBlock(paragraph);
SdtBlock sdtBlock = new SdtBlock(sdtPr, sdtCBlock);

//add this content control to the body of the word document
WordprocessingDocument wDoc = WordprocessingDocument.Open(path, true); //path is where your word 2007 file is
Body mBody = wDoc.MainDocumentPart.Document.Body;
mBody.AppendChild(sdtBlock);

wDoc.MainDocumentPart.Document.Save();
wDoc.Dispose();

Я надеюсь, что это ответит на часть вашего вопроса. Я не понял, что вы имеете в виду, говоря «Сопоставьте это с XML». Вы хотели сказать, что хотите создать CustomXmlBlock и добавить к нему ContentControl?

9
ответ дан 9 December 2019 в 20:45
поделиться

Найдите Word Content Control Toolkit на сайте www.codeplex.com.

Вот очень краткое объяснение того, как делать то, что вы пытаетесь сделать.

  1. Вам необходимо иметь доступ к вкладке разработчика на ленте Word. Чтобы это заработало, нажмите на «Офис» (круглая штука) в верхнем левом углу и выберите «Параметры Word» в нижней части меню. На первой странице параметров есть флажок, показывающий панель инструментов разработчика.

  2. Используйте панель инструментов разработчика, чтобы добавить элементы управления содержимым, которые вы хотите разместить на странице. Нажмите кнопку свойств в разделе «Элементы управления содержимым» на панели разработчика и задайте свойства имени и тега (я придерживаюсь того, что поля имени и тега называются одинаковыми именами).

  3. Сохраните и закройте текстовый документ.

  4. Открыть набор инструментов управления содержимым, а затем откройте документ с помощью набора инструментов. Используйте левую руку, чтобы создать некоторый пользовательский XML-код для связи с вашими элементами управления.

  5. Теперь используйте представление привязки, чтобы перетащить сопоставления между вашим пользовательским XML-файлом и пользовательскими элементами управления, которые отображаются на правой панели набора инструментов.

  6. Вы можете использовать openxml sdk 1.0 или 2.0 (все еще в ctp), чтобы открыть текстовый документ в коде и получить доступ к пользовательскому XML-файлу, который содержится как часть текстового документа.

Если вы хотите взглянуть на как ваш текстовый документ выглядит как xml. Сделайте копию вашего текстового документа и переименуйте его в «a.zip». Дважды щелкните zip-файл и перейдите по структуре папок. Основное содержимое текстового документа хранится в папке Word в файле с именем «document.xml». Пользовательская XML-часть документа хранится в папке customXml и обычно находится в файле с именем "

3
ответ дан 9 December 2019 в 20:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: