如何使用Help.ShowHelp显示搜索?

时间:2015-06-02 22:01:53

标签: c# chm

在此代码中,目录和索引正在运行,但搜索没有。我不确定HelpNavigator.Find是否正常?是否有其他方法可以显示从chm文件中搜索?

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Spomenik
{
    public partial class Pomoc : Form
    {
        public Pomoc()
        {
            InitializeComponent();
        }

        private void Help_Click(object sender, EventArgs e)
        {
            System.Windows.Forms.Help.ShowHelp(this, "..\\..\\Slika\\SpomenikPomoc.chm");

            //Help.Show(this, "..\\..\\Slika\\SpomenikPomoc.chm"); ne radi jer mi je Help naziv dugmeta
        }

        private void Index_Click(object sender, EventArgs e)
        {
            System.Windows.Forms.Help.ShowHelpIndex(this, "..\\..\\Slika\\SpomenikPomoc.chm");
        }

        private void Search_Click(object sender, EventArgs e)
        {
            **System.Windows.Forms.Help.ShowHelp(this, "..\\..\\Slika\\SpomenikPomoc.chm", HelpNavigator.Find);**
        }
    }
}

1 个答案:

答案 0 :(得分:0)

指定一个空字符串("")作为最后一个参数:

Help.ShowHelp(this, "..\\..\\Slika\\SpomenikPomoc.chm", HelpNavigator.Find, "");


来自Help.ShowHelp Method (Control, String, HelpNavigator, Object)

  

如果命令参数中指定的值为TableOfContents,Index或Find,则此值应为空字符串

反射器显示带有3个参数的ShowHelp版本使用null作为第4个参数,而不是""。可能这就是为什么Find不起作用的原因。您需要使用带有所有必需参数的“完整”方法版本。