HelpProvider и контекстно-зависимая справка для элементов управления вкладки с помощью HelpKeyword и TopicID - PullRequest
0 голосов
/ 22 февраля 2012

Я столкнулся с проблемой, которую поиск Google не смог решить (или, возможно, я не указал волшебную комбинацию ключевых слов).В любом случае у меня возникла следующая проблема:

Я создаю контекстно-зависимую справку для своего приложения, используя компонент HelpProvider, предоставленный VS.Для создания файлов справки я использую HelpSmith, который создает файлы .chm, имеющие тему и соответствующие идентификаторы темы.Идея состоит в том, что после установки HelpProvider.HelpNamespace я могу редактировать параметры HelpKeyword и HelpNavigator из свойств элемента управления.Кажется, это работает, когда я указываю, что HelpKeyword кнопки и HelpNavigator = TopicID.Я бегу, нажимаю и удерживаю кнопку и нажимаю F1, и мой файл справки открывается в нужной теме, как и ожидалось.Однако меня больше интересует контекстно-зависимая справка для элемента управления TabPage.Кажется, работает, когда я нажимаю на внешний TabControl, но не на отдельные страницы вкладок.В идеале я хотел бы нажать на вкладку, где находится ярлык, и отобразить справку таким образом.

Возможно ли это?

Спасибо!

1 Ответ

4 голосов
/ 16 октября 2012

У меня просто была эта проблема, кажется, что фокус должен быть внутри вкладки (а не самой вкладки).Там может быть более приятное решение, чем это, но это работает.Он перемещает фокус на первый элемент управления внутри вкладки при изменении индекса выбранной вкладки.

    /// <summary>
    /// Moves the focus to the first control on the tab to ensure that the context sensitive help works
    /// </summary>
    private void tabcMaster_SelectedIndexChanged(object sender, EventArgs e)
    {
        SelectNextControl(tabcMaster.SelectedTab,true,true, true, false);
    }
...