С# Interop Word Document добавить стиль

Я хочу добавить стиль к абзацу, но в зависимости от языковой версии мне приходится использовать другое имя. Теперь я создаю приложение для нескольких пользователей, и если у них есть английская версия, я могу использовать «Заголовок 1», но если они этого не сделают, стиль не распознается. Мне было интересно, что я должен сделать, должен ли я добавить новый стиль? Я изучал это, но я не могу понять, как это сделать.

Итак, в моей голландской версии я использую:

selection.TypeParagraph();
object kop1 = "Kop1";
selection.set_Style(kop1);
selection.TypeText("test");

но английский мне нужен:

selection.TypeParagraph();
object kop1 = "Header 1";
selection.set_Style(kop1);
selection.TypeText("test");

На самом деле мне это нужно для создания таблицы содержимого, я не могу создать таблицу содержимого, если не использую стили, верно? В противном случае мои таблицы содержимого говорят, что у него нет содержимого.

Я делаю таблицу содержимого, используя:

object start = adoc.Content.End - 1;
Range rangeForTOC = adoc.Range(ref start, ref missing);
TableOfContents toc = adoc.TablesOfContents.Add(rangeForTOC, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);
adoc.TablesOfContents[1].TabLeader = WdTabLeader.wdTabLeaderDots;
adoc.TablesOfContents.Format = WdTocFormat.wdTOCClassic;
toc.Update();

Есть идеи?


person WtFudgE    schedule 11.03.2012    source источник


Ответы (2)


Возможно, вы захотите использовать перечисление Word.WdBuiltinStyle вместо строк, зависящих от языка. Например, используйте Word.WdBuiltinStyle.wdStyleHeading1 в приведенном выше коде.

Другой способ решить эту проблему — добавить собственный шаблон и использовать стили, определенные в этом шаблоне. В этом случае вы предоставляете свой шаблон в своем дистрибутиве.

Для использования предопределенных стилей создания таблиц см. также этот ответ: Настройка Word Дизайн стилей таблиц 2007 года в коде

person Shital Shah    schedule 11.03.2012

Для одного я бы использовал DocX (без Com)

Здесь представлена ​​информация о стилях.

person Micah Armantrout    schedule 11.03.2012