Redvan Ответов: 1

Открытие справочного документа word в определенном месте .Объем применения


У меня есть экран поиска с переключателем управления с несколькими вариантами выбора и справочный документ Word с помощью для каждого из этих вариантов, но только один значок справки на экране.

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

Вопрос в том, Могу ли я открыть справочный документ в определенном разделе, который охватывает этот выбор, исходя из выбранного переключателя?

С уважением,
Красный.

ОБНОВЛЕНИЕ:
Если кому-то интересно;
Я действительно нашел кое-что, что, как мне кажется, может стать отправной точкой для достижения того, что я первоначально разместил по этой ссылке:

http://www.vb-helper.com/howto_net_open_word_bookmark.html

Красный.

Что я уже пробовал:

Word предлагает возможность вставлять закладки в определенные места документа, но я не могу понять, как использовать это в своих интересах и возможно ли это вообще.

Поиск в интернете до сих пор не дал достойных результатов, но я все еще ищу.

ZurdoDev

Насколько я знаю, до сих пор нет способа сделать это без использования макросов. Ответ в течение многих лет состоял в том, чтобы сохранить его как веб-страницу. Я думаю, что это все еще ответ.

Redvan

Это то, что я думал и слышал, но хотел быть уверенным.
Спасибо, Ряндев.

1 Ответов

Рейтинг:
6

Ramza360

Вам нужно добавить закладки непосредственно в word doc, чтобы иметь возможность искать и находить раздел.

Некоторые примеры кода, чтобы найти и прокрутить закладку в c#, если вам нужен VBA, вам придется портировать.

Microsoft.Office.Interop.Word.Application wApp = new Microsoft.Office.Interop.Word.Application();

wApp.Visible = true;
Microsoft.Office.Interop.Word._Document doc = wApp.Documents.Open("yourhelpdocpath");

if (null != doc) {
    if (doc.Bookmarks.Exists("yourRadioButtonBookmarkSelection")){
         Microsoft.Office.Interop.Word.Bookmark mark = doc.Bookmarks["yourRadioButtonBookmarkSelection"];
         Microsoft.Office.Interop.Word.Range rng = mark.Range;
         wApp.ActiveWindow.ScrollIntoView(rng);
    }
}


Протестировано с использованием локального документа word, хотя я считаю, что он должен работать через вызов сервера до тех пор, пока вы определенно можете получить документ.