c# 操作CHM文件

来源:互联网 发布:大数据分析报告 编辑:程序博客网 时间:2024/05/29 08:00

HelpNavigator 枚举

.NET Framework 4
其他版本
  • .NET Framework 4.5
  • .NET Framework 3.5
  • .NET Framework 3.0
  • .NET Framework 2.0
此主题尚未评级- 评价此主题

指定常数来指示要显示的帮助文件元素。

命名空间:  System.Windows.Forms
程序集:  System.Windows.Forms(在 System.Windows.Forms.dll 中)
语法

C#
C++
F#
VB
复制
public enum HelpNavigator
成员

 成员名称说明 Topic如果指定的主题存在,则帮助文件将打开到指定的主题。  TableOfContents帮助文件将打开到目录。  Index帮助文件将打开到索引。  Find帮助文件将打开到搜索页。  AssociateIndex帮助文件将打开到特定主题首字母的索引项。  KeywordIndex如果存在具有指定索引项的主题,则帮助文件打开到该主题;否则将显示与指定关键字最接近的索引项。 TopicId帮助文件将打开到由数字主题标识符指示的主题。
备注

HelpHelpProvider 类使用此枚举提供对帮助文件中特定元素的访问。例如,当用于提供 F1 帮助的 HelpProvider 组件时,可指定TopicIdTopic 的值,从而打开到帮助中上下文特定的主题。

示例

下面的代码示例显示带有三个按钮的窗体,这些按钮可用于与 mspaint.chm 帮助文件进行交互。“显示帮助索引”按钮显示帮助文件的“索引”选项卡。“显示帮助”按钮根据“帮助导航器”列表中选择的值显示帮助文件的内容。“显示关键字”按钮根据“关键字”文本框中指定的关键字显示帮助文件的内容。

例如,若要按索引值显示 Ovals 帮助页,请在“帮助导航器”下拉列表中选择HelpNavigator.KeywordIndex 值,在“参数”文本框中键入“ovals”,然后单击“显示帮助”按钮。若要按关键字显示“使用画笔绘图”帮助主题,请在“关键字”文本框中键入“mspaint.chm::/paint_brush.htm”,然后单击“显示关键字”按钮。

该示例使用 ShowHelp 方法显示不同的“帮助”选项卡和“帮助”主题,并用ShowHelpIndex 方法显示“帮助”索引。

C#
C++
VB
复制
using System;using System.Drawing;using System.ComponentModel;using System.Windows.Forms;public class Form1 : System.Windows.Forms.Form{    private const string helpfile = "mspaint.chm";    private System.Windows.Forms.Button showIndex;    private System.Windows.Forms.Button showHelp;    private System.Windows.Forms.Label label1;    private System.Windows.Forms.ComboBox navigatorCombo;    private System.Windows.Forms.Button showKeyword;    private System.Windows.Forms.TextBox keyword;    private System.Windows.Forms.Label label2;    private System.Windows.Forms.Label label3;    private System.Windows.Forms.TextBox parameterTextBox;    [STAThread]    static void Main()     {        Application.Run(new Form1());    }    public Form1()    {        this.showIndex = new System.Windows.Forms.Button();        this.showHelp = new System.Windows.Forms.Button();        this.navigatorCombo = new System.Windows.Forms.ComboBox();        this.label1 = new System.Windows.Forms.Label();        this.showKeyword = new System.Windows.Forms.Button();        this.keyword = new System.Windows.Forms.TextBox();        this.label2 = new System.Windows.Forms.Label();        this.label3 = new System.Windows.Forms.Label();        this.parameterTextBox = new System.Windows.Forms.TextBox();        // Help Navigator Label        this.label1.Location = new System.Drawing.Point(112, 64);        this.label1.Size = new System.Drawing.Size(168, 16);        this.label1.Text = "Help Navigator:";        // Keyword Label        this.label2.Location = new System.Drawing.Point(120, 184);        this.label2.Size = new System.Drawing.Size(100, 16);        this.label2.Text = "Keyword:";        // Parameter Label        this.label3.Location = new System.Drawing.Point(112, 120);        this.label3.Size = new System.Drawing.Size(168, 16);        this.label3.Text = "Parameter:";        // Show Index Button        this.showIndex.Location = new System.Drawing.Point(16, 16);        this.showIndex.Size = new System.Drawing.Size(264, 32);        this.showIndex.TabIndex = 0;        this.showIndex.Text = "Show Help Index";        this.showIndex.Click += new System.EventHandler(this.showIndex_Click);        // Show Help Button        this.showHelp.Location = new System.Drawing.Point(16, 80);        this.showHelp.Size = new System.Drawing.Size(80, 80);        this.showHelp.TabIndex = 1;        this.showHelp.Text = "Show Help";        this.showHelp.Click += new System.EventHandler(this.showHelp_Click);        // Show Keyword Button        this.showKeyword.Location = new System.Drawing.Point(16, 192);        this.showKeyword.Size = new System.Drawing.Size(88, 32);        this.showKeyword.TabIndex = 4;        this.showKeyword.Text = "Show Keyword";        this.showKeyword.Click += new System.EventHandler(this.showKeyword_Click);        // Help Navigator ComboBox        this.navigatorCombo.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;        this.navigatorCombo.Location = new System.Drawing.Point(112, 80);        this.navigatorCombo.Size = new System.Drawing.Size(168, 21);        this.navigatorCombo.TabIndex = 2;        // Keyword TextBox        this.keyword.Location = new System.Drawing.Point(120, 200);        this.keyword.Size = new System.Drawing.Size(160, 20);        this.keyword.TabIndex = 5;        this.keyword.Text = "";        // Parameter TextBox        this.parameterTextBox.Location = new System.Drawing.Point(112, 136);        this.parameterTextBox.Size = new System.Drawing.Size(168, 20);        this.parameterTextBox.TabIndex = 8;        this.parameterTextBox.Text = "";        // Set up how the form should be displayed and add the controls to the form.        this.ClientSize = new System.Drawing.Size(292, 266);        this.Controls.AddRange(new System.Windows.Forms.Control[] {                                        this.parameterTextBox, this.label3,                                        this.label2, this.keyword,                                        this.showKeyword, this.label1,                                        this.navigatorCombo, this.showHelp,                                        this.showIndex});        this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;        this.Text = "Help App";        // Load the various values of the HelpNavigator enumeration        // into the combo box.        TypeConverter converter;        converter = TypeDescriptor.GetConverter(typeof(HelpNavigator));        foreach(object value in converter.GetStandardValues())         {            navigatorCombo.Items.Add(value);        }    }    private void showIndex_Click(object sender, System.EventArgs e)    {        // Display the index for the help file.        Help.ShowHelpIndex(this, helpfile);    }    private void showHelp_Click(object sender, System.EventArgs e)    {        // Display Help using the Help navigator enumeration        // that is selected in the combo box. Some enumeration        // values make use of an extra parameter, which can        // be passed in through the Parameter text box.        HelpNavigator navigator = HelpNavigator.TableOfContents;        if (navigatorCombo.SelectedItem != null)        {            navigator = (HelpNavigator)navigatorCombo.SelectedItem;        }        Help.ShowHelp(this, helpfile, navigator, parameterTextBox.Text);    }    private void showKeyword_Click(object sender, System.EventArgs e)    {        // Display help using the provided keyword.        Help.ShowHelp(this, helpfile, keyword.Text);    }}

版本信息

.NET Framework

受以下版本支持:4、3.5、3.0、2.0、1.1、1.0

.NET Framework Client Profile

受以下版本支持:4、3.5 SP1
平台

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2

.NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求
请参见

参考

System.Windows.Forms 命名空间
原创粉丝点击