This documentation is archived and is not being maintained.

Help Class

Encapsulates the HTML Help 1.0 engine.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

'Declaration
Public Class Help
'Usage
Dim instance As Help

You cannot create a new instance of the Help class. To provide Help for an application, call the static ShowHelp and ShowHelpIndex methods.

You can use Help to show compiled Help files (.chm) or HTML files in the HTML Help format. Compiled Help files provide table of contents, index, search, and keyword links in pages. Shortcuts work only in compiled Help files.

You can generate HTML Help 1.x files with the HTML Help Workshop. For more information on HTML Help, see "HTML Help Workshop" and other HTML Help topics at http://msdn.microsoft.com.

The following code example displays a form with three buttons that can be used to interact with the mspaint.chm Help file. The Show Help Index button displays the Index tab for the Help file. The Show Help button displays content in the Help file based on the value selected in the Help Navigator list. The Show Keyword button displays content in the Help file based on the keyword specified in the Keyword text box.

For example, to show the Ovals Help page by the index value, select the HelpNavigator.KeywordIndex value in the Help Navigator drop-down list, type ovals in the Parameter text box, and then click the Show Help button. To show the "To paint with a brush" Help topic by the keyword, type mspaint.chm::/paint_brush.htm in the Keyword text box, and then click the Show Keyword button.

The example uses the ShowHelp method to display the different Help tabs and Help topics, and the ShowHelpIndex method to display the Help index.

Imports System
Imports System.Drawing
Imports System.ComponentModel
Imports System.Windows.Forms

Public Class Form1
    Inherits System.Windows.Forms.Form
    Private helpfile As String = "mspaint.chm" 
    Private WithEvents showIndex As System.Windows.Forms.Button
    Private WithEvents showHelp As System.Windows.Forms.Button
    Private WithEvents label1 As System.Windows.Forms.Label
    Private WithEvents navigatorCombo As System.Windows.Forms.ComboBox
    Private WithEvents showKeyword As System.Windows.Forms.Button
    Private WithEvents keyword As System.Windows.Forms.TextBox
    Private WithEvents label2 As System.Windows.Forms.Label
    Private WithEvents label3 As System.Windows.Forms.Label
    Private WithEvents parameterTextBox As System.Windows.Forms.TextBox

    <STAThread()> _
    Shared Sub Main()
        Application.Run(New Form1)
    End Sub 'Main

    Public Sub New()
        Me.showIndex = New System.Windows.Forms.Button
        Me.showHelp = New System.Windows.Forms.Button
        Me.navigatorCombo = New System.Windows.Forms.ComboBox
        Me.label1 = New System.Windows.Forms.Label
        Me.showKeyword = New System.Windows.Forms.Button
        Me.keyword = New System.Windows.Forms.TextBox
        Me.label2 = New System.Windows.Forms.Label
        Me.label3 = New System.Windows.Forms.Label
        Me.parameterTextBox = New System.Windows.Forms.TextBox

        ' Help Navigator Label 
        Me.label1.Location = New System.Drawing.Point(112, 64)
        Me.label1.Size = New System.Drawing.Size(168, 16)
        Me.label1.Text = "Help Navigator:" 

        ' Keyword Label 
        Me.label2.Location = New System.Drawing.Point(120, 184)
        Me.label2.Size = New System.Drawing.Size(100, 16)
        Me.label2.Text = "Keyword:" 

        ' Parameter Label 
        Me.label3.Location = New System.Drawing.Point(112, 120)
        Me.label3.Size = New System.Drawing.Size(168, 16)
        Me.label3.Text = "Parameter:" 

        ' Show Index Button 
        Me.showIndex.Location = New System.Drawing.Point(16, 16)
        Me.showIndex.Size = New System.Drawing.Size(264, 32)
        Me.showIndex.TabIndex = 0
        Me.showIndex.Text = "Show Help Index" 

        ' Show Help Button 
        Me.showHelp.Location = New System.Drawing.Point(16, 80)
        Me.showHelp.Size = New System.Drawing.Size(80, 80)
        Me.showHelp.TabIndex = 1
        Me.showHelp.Text = "Show Help" 

        ' Show Keyword Button 
        Me.showKeyword.Location = New System.Drawing.Point(16, 192)
        Me.showKeyword.Size = New System.Drawing.Size(88, 32)
        Me.showKeyword.TabIndex = 4
        Me.showKeyword.Text = "Show Keyword" 

        ' Help Navigator Combo 
        '  
        Me.navigatorCombo.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList
        Me.navigatorCombo.Location = New System.Drawing.Point(112, 80)
        Me.navigatorCombo.Size = New System.Drawing.Size(168, 21)
        Me.navigatorCombo.TabIndex = 2

        ' Keyword TextBox 
        Me.keyword.Location = New System.Drawing.Point(120, 200)
        Me.keyword.Size = New System.Drawing.Size(160, 20)
        Me.keyword.TabIndex = 5
        Me.keyword.Text = "" 
        '  
        ' Parameter TextBox 
        '  
        Me.parameterTextBox.Location = New System.Drawing.Point(112, 136)
        Me.parameterTextBox.Size = New System.Drawing.Size(168, 20)
        Me.parameterTextBox.TabIndex = 8
        Me.parameterTextBox.Text = "" 

        ' Set up how the form should be displayed and add the controls to the form. 
        Me.ClientSize = New System.Drawing.Size(292, 266)
        Me.Controls.AddRange(New System.Windows.Forms.Control() {Me.parameterTextBox, _
                                Me.label3, Me.label2, Me.keyword, Me.showKeyword, _
                                Me.label1, Me.navigatorCombo, Me.showHelp, Me.showIndex})
        Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog
        Me.Text = "Help App" 

        ' Load the various values of the HelpNavigator enumeration 
        ' into the combo box.  
        Dim converter As TypeConverter
        converter = TypeDescriptor.GetConverter(GetType(HelpNavigator))

        Dim value As Object
        For Each value In converter.GetStandardValues()
            navigatorCombo.Items.Add(value)
        Next value
    End Sub 'New 

    Private Sub showIndex_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles showIndex.Click
        ' Display the index for the Help file.
        Help.ShowHelpIndex(Me, helpfile)
    End Sub 'showIndex_Click
    Private Sub showHelp_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles showHelp.Click
        ' 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. 
        Dim navigator As HelpNavigator = HelpNavigator.TableOfContents
        If (navigatorCombo.SelectedItem IsNot Nothing) Then
            navigator = CType(navigatorCombo.SelectedItem, HelpNavigator)
        End If
        Help.ShowHelp(Me, helpfile, navigator, parameterTextBox.Text)
    End Sub 'showHelp_Click
    Private Sub showKeyword_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles showKeyword.Click
        ' Display Help using the provided keyword. 
        Help.ShowHelp(Me, helpfile, keyword.Text)
    End Sub 'showKeyword_Click
End Class 'Form1

System.Object
  System.Windows.Forms.Help

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows Mobile for Pocket PC

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0
Show: