Отображение chm из меню
Привет! Итак, в основном я пытаюсь открыть мой файл.chm в окне справки, когда я нажимаю "Просмотреть справку" в строке меню в форме aC# windows. Как мне это сделать? CHM должен быть в каталоге проекта? я попытался использовать компонент helpProvider и установить его пространство имен для файла.chm, но когда я запускаю приложение, нажатие клавиши F1 не вызывает его... и я не могу понять, как заставить строку меню показать это.
Спасибо! Дейв К.
2 ответа
HelpProvider
мешает здесь, используйте Help
учебный класс. Прежде всего, помещать файл.chm в тот же каталог, что и ваш EXE, - очень хорошая идея. Проект> Добавить существующий элемент> выберите файл.chm, чтобы он был добавлен в ваш проект. Выберите его в окне обозревателя решений, в окне "Свойства" установите "Построить действие = Содержимое", "Копировать в выходной каталог" = "Копировать, если новее".
Пример кода для вашей формы:
using System.IO;
...
private void showMyHelp() {
string path = Path.GetDirectoryName(Application.ExecutablePath);
path = "file://" + Path.Combine(path, "example.chm");
Help.ShowHelp(this, path);
}
protected override bool ProcessCmdKey(ref Message msg, Keys keyData) {
if (keyData == Keys.F1) {
showMyHelp();
return true;
}
return base.ProcessCmdKey(ref msg, keyData);
}
private void HelpButton_Click(object sender, EventArgs e) {
showMyHelp();
}