Интеграция «Помощь» в приложение WinForms - PullRequest
11 голосов
/ 01 июля 2010

Я работаю над Visual Studio, нам нужно интегрировать в нее справочные меню. Я хотел бы сделать это в канонической манере Windows, но в этом отношении у меня нет большого опыта работы с .NET Framework. Поиск в Google и SO не принес больших результатов, потому что большинство результатов - это люди, которые просят о помощи, а не помогают с «помощью». Мета-помощь, если хотите.

Из проведенного мною исследования, .chm файлы, похоже, лучший путь. Как создаются эти файлы? Есть ли в VS интегрированный инструмент?

Как только у меня есть файлы, как мне получить данные из них? Я просто хочу запустить их в отдельном процессе? Показать дополнительную форму и загрузить в нее файл справки?

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

1 Ответ

8 голосов
/ 01 июля 2010

Вы ищете что-то под названием Поставщик справки. Это компонент формы. Он позволяет вам отвечать на вызовы F1 в формах или элементах управления и отображать их в разделе в файле справки.

http://msdn.microsoft.com/en-us/library/system.windows.forms.helpprovider.aspx

http://www.dotnetspider.com/resources/24241-F-Help-Provider.aspx

http://netpl.blogspot.com/2007/07/context-help-made-easy-revisited.html

Файлы CHM могут быть созданы с помощью ряда бесплатных инструментов. Google "Бесплатные редакторы CHM" или что-то подобное. По умолчанию ничего не интегрировано с VS.

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

...