Help Класс

Определение

Инкапсулирует ядро справки HTML Help 1.0.

public ref class Help
public ref class Help abstract sealed
public class Help
public static class Help
type Help = class
Public Class Help
Наследование
Help

Примеры

В следующем примере кода показана форма, содержащая три кнопки, которые можно использовать для взаимодействия с файлом справки Mspaint.chm. На кнопке "Показать индекс справки" отображается вкладка "Индекс" для файла справки. Кнопка "Показать справку" отображает содержимое в файле справки на основе значения, выбранного в списке справки . Кнопка "Показать ключевое слово" отображает содержимое в файле справки на основе ключевого слова, указанного в текстовом поле "Ключевое слово".

Например, чтобы отобразить страницу справки "Овалы" по значению индекса, выберите HelpNavigator.KeywordIndex значение в раскрывающемся списке "Навигатор справки ", введите овалы в текстовом поле "Параметр " и нажмите кнопку " Показать справку ". Чтобы отобразить раздел справки "Рисование с помощью кисти" по ключевому слову, введите mspaint.chm::/paint_brush.htm в текстовом поле " Ключевое слово", а затем нажмите кнопку "Показать ключевое слово ".

В этом примере используется ShowHelp метод для отображения различных вкладок справки и разделов справки, а ShowHelpIndex также метода для отображения индекса справки.

#using <System.dll>
#using <System.Drawing.dll>
#using <System.Windows.Forms.dll>

using namespace System;
using namespace System::Drawing;
using namespace System::ComponentModel;
using namespace System::Windows::Forms;
public ref class Form1: public System::Windows::Forms::Form
{
private:
   String^ helpfile;
   System::Windows::Forms::Button^ showIndex;
   System::Windows::Forms::Button^ showHelp;
   System::Windows::Forms::Label ^ label1;
   System::Windows::Forms::ComboBox^ navigatorCombo;
   System::Windows::Forms::Button^ showKeyword;
   System::Windows::Forms::TextBox^ keyword;
   System::Windows::Forms::Label ^ label2;
   System::Windows::Forms::Label ^ label3;
   System::Windows::Forms::TextBox^ parameterTextBox;

public:
   Form1()
   {
      helpfile = "mspaint.chm";
      this->showIndex = gcnew System::Windows::Forms::Button;
      this->showHelp = gcnew System::Windows::Forms::Button;
      this->navigatorCombo = gcnew System::Windows::Forms::ComboBox;
      this->label1 = gcnew System::Windows::Forms::Label;
      this->showKeyword = gcnew System::Windows::Forms::Button;
      this->keyword = gcnew System::Windows::Forms::TextBox;
      this->label2 = gcnew System::Windows::Forms::Label;
      this->label3 = gcnew System::Windows::Forms::Label;
      this->parameterTextBox = gcnew System::Windows::Forms::TextBox;
      
      // Help Navigator Label
      this->label1->Location = System::Drawing::Point( 112, 64 );
      this->label1->Size = System::Drawing::Size( 168, 16 );
      this->label1->Text = "Help Navigator:";
      
      // Keyword Label 
      this->label2->Location = System::Drawing::Point( 120, 184 );
      this->label2->Size = System::Drawing::Size( 100, 16 );
      this->label2->Text = "Keyword:";
      
      // Parameter Label
      this->label3->Location = System::Drawing::Point( 112, 120 );
      this->label3->Size = System::Drawing::Size( 168, 16 );
      this->label3->Text = "Parameter:";
      
      // Show Index Button
      this->showIndex->Location = System::Drawing::Point( 16, 16 );
      this->showIndex->Size = System::Drawing::Size( 264, 32 );
      this->showIndex->TabIndex = 0;
      this->showIndex->Text = "Show Help Index";
      this->showIndex->Click += gcnew System::EventHandler( this, &Form1::showIndex_Click );
      
      // Show Help Button
      this->showHelp->Location = System::Drawing::Point( 16, 80 );
      this->showHelp->Size = System::Drawing::Size( 80, 80 );
      this->showHelp->TabIndex = 1;
      this->showHelp->Text = "Show Help";
      this->showHelp->Click += gcnew System::EventHandler( this, &Form1::showHelp_Click );
      
      // Show Keyword Button
      this->showKeyword->Location = System::Drawing::Point( 16, 192 );
      this->showKeyword->Size = System::Drawing::Size( 88, 32 );
      this->showKeyword->TabIndex = 4;
      this->showKeyword->Text = "Show Keyword";
      this->showKeyword->Click += gcnew System::EventHandler( this, &Form1::showKeyword_Click );
      
      // Help Navigator ComboBox
      this->navigatorCombo->DropDownStyle = System::Windows::Forms::ComboBoxStyle::DropDownList;
      this->navigatorCombo->Location = System::Drawing::Point( 112, 80 );
      this->navigatorCombo->Size = System::Drawing::Size( 168, 21 );
      this->navigatorCombo->TabIndex = 2;
      
      // Keyword TextBox
      this->keyword->Location = System::Drawing::Point( 120, 200 );
      this->keyword->Size = System::Drawing::Size( 160, 20 );
      this->keyword->TabIndex = 5;
      this->keyword->Text = "";
      
      // Parameter TextBox
      this->parameterTextBox->Location = System::Drawing::Point( 112, 136 );
      this->parameterTextBox->Size = 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 = System::Drawing::Size( 292, 266 );
      array<System::Windows::Forms::Control^>^formControls = {this->parameterTextBox,this->label3,this->label2,this->keyword,this->showKeyword,this->label1,this->navigatorCombo,this->showHelp,this->showIndex};
      this->Controls->AddRange( formControls );
      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( HelpNavigator::typeid );
      System::Collections::IEnumerator^ myEnum = converter->GetStandardValues()->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         Object^ value = safe_cast<Object^>(myEnum->Current);
         navigatorCombo->Items->Add( value );
      }
   }

private:
   void showIndex_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      
      // Display the index for the help file.
      Help::ShowHelpIndex( this, helpfile );
   }

   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 != nullptr )
      {
         navigator =  *safe_cast<HelpNavigator^>(navigatorCombo->SelectedItem);
      }

      Help::ShowHelp( this, helpfile, navigator, parameterTextBox->Text );
   }

   void showKeyword_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      
      // Display help using the provided keyword.
      Help::ShowHelp( this, helpfile, keyword->Text );
   }
};

[STAThread]
int main()
{
   Application::Run( gcnew Form1 );
}
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);
    }
}
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
    
    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

    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
    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
    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
End Class

Комментарии

Невозможно создать новый экземпляр Help класса. Чтобы предоставить справку для приложения, вызовите статические ShowHelp и ShowHelpIndex методы.

Можно использовать для Help отображения скомпилированных файлов справки (CHM) или HTML-файлов в формате справки HTML. Скомпилированные файлы справки предоставляют оглавление, индекс, возможности поиска и ссылки на ключевые слова на страницах. Ярлыки работают только в скомпилированных файлах справки.

Файлы справки HTML 1.x можно создать с помощью семинара справки HTML. Дополнительные сведения о справке HTML см. в разделе "Семинар справки HTML" и другие разделы справки HTML в справке Майкрософт.

Методы

ShowHelp(Control, String)

Отображает содержимое файла справки по заданному URL-адресу.

ShowHelp(Control, String, HelpNavigator)

Отображает содержимое файла справки, найденного по заданному URL-адресу, для заданного раздела.

ShowHelp(Control, String, HelpNavigator, Object)

Отображает содержимое файла справки, находящегося по URL-адресу, заданному пользователем.

ShowHelp(Control, String, String)

Отображает содержимое файла справки, найденное по заданному URL-адресу, для заданного слова.

ShowHelpIndex(Control, String)

Отображает индекс заданного файла справки.

ShowPopup(Control, String, Point)

Отображает всплывающее окно справки.

Применяется к

См. также раздел