Настройте встроенный стиль Microsoft Word с нумерацией - PullRequest
1 голос
/ 22 апреля 2020

У меня есть текстовый документ, который уже определен в костюмированном встроенном стиле. Как показано на рисунке ниже.

enter image description here

Я хочу изменить стиль предопределенного встроенного стиля, запустив код C# ниже.

        // open document
        Object oFilePath = "C://Users/myDoc.docx";   
        Microsoft.Office.Interop.Word._Document myDoc;
        myDoc = wrdApp.Documents.Open(ref oFilePath, ref oMissing,
                            ref oMissing, ref oMissing, ref oMissing, ref oMissing,
                            ref oMissing, ref oMissing, ref oMissing, ref oMissing,
                            ref oMissing, ref oMissing, ref oMissing, ref oMissing,
                            ref oMissing, ref oMissing
                       );
        // Change header2 style
        myDoc.Styles[WdBuiltinStyle.wdStyleHeading2].Font.Color = WdColor.wdColorOrange;


        //save and close doc
        myDoc.Save();
        Object oFalse = false;
        myDoc.Close(ref oFalse, ref oMissing, ref oMissing);

Код успешно меняет цвет текста заголовка, но число перед текстом все еще остается зеленым, на него не влияет код. Как на следующей картинке.

enter image description here

Пожалуйста, дайте мне подсказку, чтобы также применить изменение цвета к нумерации заголовка. Спасибо.

1 Ответ

1 голос
/ 22 апреля 2020

да, вы можете сделать это с помощью API

//To Cancel the numerotation
ListTemplate lt = null;
myDoc.Styles[WdBuiltinStyle.wdStyleHeading2].LinkToListTemplate(lt);

//To add First Level of Numerotation
ListGallery gallery = wrdApp.ListGalleries[WdListGalleryType.wdNumberGallery];
myDoc.Styles[WdBuiltinStyle.wdStyleHeading2].LinkToListTemplate(gallery.ListTemplates[1]);
...