HelpProvider Classe

Definição

Disponibiliza pop-up ou ajuda online para controlos.

public ref class HelpProvider : System::ComponentModel::Component, System::ComponentModel::IExtenderProvider
public class HelpProvider : System.ComponentModel.Component, System.ComponentModel.IExtenderProvider
type HelpProvider = class
    inherit Component
    interface IExtenderProvider
Public Class HelpProvider
Inherits Component
Implements IExtenderProvider
Herança
Implementações

Exemplos

O exemplo de código seguinte demonstra a utilização da HelpProvider classe para mostrar a Ajuda sensível ao contexto num formulário contendo quatro campos de endereço. O exemplo usa o SetHelpString método para definir o texto da dica de ajuda. Quando usa o botão contextual Ajuda e clica no cursor Ajuda num campo de endereço, a Dica de Ajuda aparece com o texto especificado. Quando pressiona a tecla F1 com o foco num campo de endereço, o ficheiro de ajuda mspaint.chm é exibido porque a HelpNamespace propriedade foi definida para mspaint.chm. O SetShowHelp método é chamado para cada controlo de endereço identificar que tem conteúdo de Ajuda disponível.

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

using namespace System;
using namespace System::Drawing;
using namespace System::Windows::Forms;
public ref class Form1: public System::Windows::Forms::Form
{
private:
   System::Windows::Forms::TextBox^ addressTextBox;
   System::Windows::Forms::Label ^ label2;
   System::Windows::Forms::TextBox^ cityTextBox;
   System::Windows::Forms::Label ^ label3;
   System::Windows::Forms::TextBox^ stateTextBox;
   System::Windows::Forms::TextBox^ zipTextBox;
   System::Windows::Forms::HelpProvider^ helpProvider1;
   System::Windows::Forms::Label ^ helpLabel;

public:
   Form1()
   {
      this->addressTextBox = gcnew System::Windows::Forms::TextBox;
      this->helpLabel = gcnew System::Windows::Forms::Label;
      this->label2 = gcnew System::Windows::Forms::Label;
      this->cityTextBox = gcnew System::Windows::Forms::TextBox;
      this->label3 = gcnew System::Windows::Forms::Label;
      this->stateTextBox = gcnew System::Windows::Forms::TextBox;
      this->zipTextBox = gcnew System::Windows::Forms::TextBox;
      
      // Help Label
      this->helpLabel->BorderStyle = System::Windows::Forms::BorderStyle::Fixed3D;
      this->helpLabel->Location = System::Drawing::Point( 8, 80 );
      this->helpLabel->Size = System::Drawing::Size( 272, 72 );
      this->helpLabel->Text = "Click the Help button in the title bar, then click a control to see a Help tooltip for the control.  Click on a control and press F1 to invoke the Help system with a sample Help file.";
      
      // Address Label
      this->label2->Location = System::Drawing::Point( 16, 8 );
      this->label2->Size = System::Drawing::Size( 100, 16 );
      this->label2->Text = "Address:";
      
      // Comma Label
      this->label3->Location = System::Drawing::Point( 136, 56 );
      this->label3->Size = System::Drawing::Size( 16, 16 );
      this->label3->Text = ", ";
      
      // Create the HelpProvider.
      this->helpProvider1 = gcnew System::Windows::Forms::HelpProvider;
      
      // Tell the HelpProvider what controls to provide help for, and
      // what the help String* is.
      this->helpProvider1->SetShowHelp( this->addressTextBox, true );
      this->helpProvider1->SetHelpString( this->addressTextBox, "Enter the street address in this text box." );
      this->helpProvider1->SetShowHelp( this->cityTextBox, true );
      this->helpProvider1->SetHelpString( this->cityTextBox, "Enter the city here." );
      this->helpProvider1->SetShowHelp( this->stateTextBox, true );
      this->helpProvider1->SetHelpString( this->stateTextBox, "Enter the state in this text box." );
      this->helpProvider1->SetShowHelp( this->zipTextBox, true );
      this->helpProvider1->SetHelpString( this->zipTextBox, "Enter the zip code here." );
      
      // Set what the Help file will be for the HelpProvider.
      this->helpProvider1->HelpNamespace = "mspaint.chm";
      
      // Sets properties for the different address fields.
      // Address TextBox
      this->addressTextBox->Location = System::Drawing::Point( 16, 24 );
      this->addressTextBox->Size = System::Drawing::Size( 264, 20 );
      this->addressTextBox->TabIndex = 0;
      this->addressTextBox->Text = "";
      
      // City TextBox
      this->cityTextBox->Location = System::Drawing::Point( 16, 48 );
      this->cityTextBox->Size = System::Drawing::Size( 120, 20 );
      this->cityTextBox->TabIndex = 3;
      this->cityTextBox->Text = "";
      
      // State TextBox
      this->stateTextBox->Location = System::Drawing::Point( 152, 48 );
      this->stateTextBox->MaxLength = 2;
      this->stateTextBox->Size = System::Drawing::Size( 32, 20 );
      this->stateTextBox->TabIndex = 5;
      this->stateTextBox->Text = "";
      
      // Zip TextBox
      this->zipTextBox->Location = System::Drawing::Point( 192, 48 );
      this->zipTextBox->Size = System::Drawing::Size( 88, 20 );
      this->zipTextBox->TabIndex = 6;
      this->zipTextBox->Text = "";
      
      // Add the controls to the form.
      array<System::Windows::Forms::Control^>^temp0 = {this->zipTextBox,this->stateTextBox,this->label3,this->cityTextBox,this->label2,this->helpLabel,this->addressTextBox};
      this->Controls->AddRange( temp0 );
      
      // Set the form to look like a dialog, and show the HelpButton.
      this->FormBorderStyle = System::Windows::Forms::FormBorderStyle::FixedDialog;
      this->HelpButton = true;
      this->MaximizeBox = false;
      this->MinimizeBox = false;
      this->ClientSize = System::Drawing::Size( 292, 160 );
      this->Text = "Help Provider Demonstration";
   }

};


[STAThread]
int main()
{
   Application::Run( gcnew Form1 );
}
using System;
using System.Drawing;
using System.Windows.Forms;

public class Form1 : System.Windows.Forms.Form
{
    private System.Windows.Forms.TextBox addressTextBox;
    private System.Windows.Forms.Label label2;
    private System.Windows.Forms.TextBox cityTextBox;
    private System.Windows.Forms.Label label3;
    private System.Windows.Forms.TextBox stateTextBox;
    private System.Windows.Forms.TextBox zipTextBox;
    private System.Windows.Forms.HelpProvider helpProvider1;
    private System.Windows.Forms.Label helpLabel;

    [STAThread]
    static void Main() 
    {
        Application.Run(new Form1());
    }

    public Form1()
    {
        this.addressTextBox = new System.Windows.Forms.TextBox();
        this.helpLabel = new System.Windows.Forms.Label();
        this.label2 = new System.Windows.Forms.Label();
        this.cityTextBox = new System.Windows.Forms.TextBox();
        this.label3 = new System.Windows.Forms.Label();
        this.stateTextBox = new System.Windows.Forms.TextBox();
        this.zipTextBox = new System.Windows.Forms.TextBox();
        
        // Help Label
        this.helpLabel.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
        this.helpLabel.Location = new System.Drawing.Point(8, 80);
        this.helpLabel.Size = new System.Drawing.Size(272, 72);
        this.helpLabel.Text = "Click the Help button in the title bar, then click a control " + 
            "to see a Help tooltip for the control.  Click on a control and press F1 to invoke " +
            "the Help system with a sample Help file.";

        // Address Label
        this.label2.Location = new System.Drawing.Point(16, 8);
        this.label2.Size = new System.Drawing.Size(100, 16);
        this.label2.Text = "Address:";

        // Comma Label
        this.label3.Location = new System.Drawing.Point(136, 56);
        this.label3.Size = new System.Drawing.Size(16, 16);
        this.label3.Text = ",";

        // Create the HelpProvider.
        this.helpProvider1 = new System.Windows.Forms.HelpProvider();

        // Tell the HelpProvider what controls to provide help for, and
        // what the help string is.
        this.helpProvider1.SetShowHelp(this.addressTextBox, true);
        this.helpProvider1.SetHelpString(this.addressTextBox, "Enter the street address in this text box.");

        this.helpProvider1.SetShowHelp(this.cityTextBox, true);
        this.helpProvider1.SetHelpString(this.cityTextBox, "Enter the city here.");

        this.helpProvider1.SetShowHelp(this.stateTextBox, true);
        this.helpProvider1.SetHelpString(this.stateTextBox, "Enter the state in this text box.");

        this.helpProvider1.SetShowHelp(this.zipTextBox, true);
        this.helpProvider1.SetHelpString(this.zipTextBox, "Enter the zip code here.");

        // Set what the Help file will be for the HelpProvider.
        this.helpProvider1.HelpNamespace = "mspaint.chm";

        // Sets properties for the different address fields.

        // Address TextBox
        this.addressTextBox.Location = new System.Drawing.Point(16, 24);
        this.addressTextBox.Size = new System.Drawing.Size(264, 20);
        this.addressTextBox.TabIndex = 0;
        this.addressTextBox.Text = "";

        // City TextBox
        this.cityTextBox.Location = new System.Drawing.Point(16, 48);
        this.cityTextBox.Size = new System.Drawing.Size(120, 20);
        this.cityTextBox.TabIndex = 3;
        this.cityTextBox.Text = "";

        // State TextBox
        this.stateTextBox.Location = new System.Drawing.Point(152, 48);
        this.stateTextBox.MaxLength = 2;
        this.stateTextBox.Size = new System.Drawing.Size(32, 20);
        this.stateTextBox.TabIndex = 5;
        this.stateTextBox.Text = "";

        // Zip TextBox
        this.zipTextBox.Location = new System.Drawing.Point(192, 48);
        this.zipTextBox.Size = new System.Drawing.Size(88, 20);
        this.zipTextBox.TabIndex = 6;
        this.zipTextBox.Text = "";

        // Add the controls to the form.
        this.Controls.AddRange(new System.Windows.Forms.Control[] {
                                    this.zipTextBox, this.stateTextBox,
                                    this.label3, this.cityTextBox,
                                    this.label2, this.helpLabel,
                                    this.addressTextBox});

        // Set the form to look like a dialog, and show the HelpButton.    
        this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
        this.HelpButton = true;
        this.MaximizeBox = false;
        this.MinimizeBox = false;
        this.ClientSize = new System.Drawing.Size(292, 160);
        this.Text = "Help Provider Demonstration";
    }
}
Imports System.Drawing
Imports System.Windows.Forms

Public Class Form1
    Inherits System.Windows.Forms.Form
    Private addressTextBox As System.Windows.Forms.TextBox
    Private label2 As System.Windows.Forms.Label
    Private cityTextBox As System.Windows.Forms.TextBox
    Private label3 As System.Windows.Forms.Label
    Private stateTextBox As System.Windows.Forms.TextBox
    Private zipTextBox As System.Windows.Forms.TextBox
    Private helpProvider1 As System.Windows.Forms.HelpProvider
    Private helpLabel As System.Windows.Forms.Label

    <STAThread()>  _
    Shared Sub Main()
        Application.Run(New Form1())
    End Sub
    
    Public Sub New()
        Me.addressTextBox = New System.Windows.Forms.TextBox()
        Me.helpLabel = New System.Windows.Forms.Label()
        Me.label2 = New System.Windows.Forms.Label()
        Me.cityTextBox = New System.Windows.Forms.TextBox()
        Me.label3 = New System.Windows.Forms.Label()
        Me.stateTextBox = New System.Windows.Forms.TextBox()
        Me.zipTextBox = New System.Windows.Forms.TextBox()

        ' Help Label
        Me.helpLabel.Location = New System.Drawing.Point(8, 80)
        Me.helpLabel.Size = New System.Drawing.Size(272, 72)
        Me.helpLabel.TabIndex = 1
        Me.helpLabel.Text = "Click the Help button in the title bar, then click a control " & _
            "to see a Help tooltip for the control.  Click on a control and press F1 to invoke " & _
            "the Help system with a sample Help file."

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

        ' Comma Label
        Me.label3.Location = New System.Drawing.Point(136, 56)
        Me.label3.Size = New System.Drawing.Size(16, 16)
        Me.label3.Text = ","

        ' Creates the HelpProvider.
        Me.helpProvider1 = New System.Windows.Forms.HelpProvider()

        ' Tell the HelpProvider what controls to provide Help for, and
        ' what the Help string is.
        Me.helpProvider1.SetHelpString(Me.addressTextBox, "Enter the street address in this text box.")
        Me.helpProvider1.SetShowHelp(Me.addressTextBox, True)

        Me.helpProvider1.SetHelpString(Me.cityTextBox, "Enter the city here.")
        Me.helpProvider1.SetShowHelp(Me.cityTextBox, True)

        Me.helpProvider1.SetHelpString(Me.stateTextBox, "Enter the state in this text box.")
        Me.helpProvider1.SetShowHelp(Me.stateTextBox, True)

        Me.helpProvider1.SetHelpString(Me.zipTextBox, "Enter the zip code here.")
        Me.helpProvider1.SetShowHelp(Me.zipTextBox, True)

        ' Sets what the Help file will be for the HelpProvider.
        Me.helpProvider1.HelpNamespace = "mspaint.chm"

        ' Set properties for the different address fields.

        ' Address TextBox
        Me.addressTextBox.Location = New System.Drawing.Point(16, 24)
        Me.addressTextBox.Size = New System.Drawing.Size(264, 20)
        Me.addressTextBox.TabIndex = 0
        Me.addressTextBox.Text = ""


        ' City TextBox
        Me.cityTextBox.Location = New System.Drawing.Point(16, 48)
        Me.cityTextBox.Size = New System.Drawing.Size(120, 20)
        Me.cityTextBox.TabIndex = 3
        Me.cityTextBox.Text = ""

        ' State TextBox
        Me.stateTextBox.Location = New System.Drawing.Point(152, 48)
        Me.stateTextBox.MaxLength = 2
        Me.stateTextBox.Size = New System.Drawing.Size(32, 20)
        Me.stateTextBox.TabIndex = 5
        Me.stateTextBox.Text = ""

        ' Zip TextBox
        Me.zipTextBox.Location = New System.Drawing.Point(192, 48)
        Me.zipTextBox.Size = New System.Drawing.Size(88, 20)
        Me.zipTextBox.TabIndex = 6
        Me.zipTextBox.Text = ""

        ' Add the controls to the form.
        Me.Controls.AddRange(New System.Windows.Forms.Control() { Me.zipTextBox, _
                                       Me.stateTextBox, Me.label3, _
                                       Me.cityTextBox, Me.label2, _
                                       Me.helpLabel, Me.addressTextBox})

        ' Set the form to look like a dialog, and show the HelpButton.    
        Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog
        Me.HelpButton = True
        Me.MaximizeBox = False
        Me.MinimizeBox = False
        Me.ClientSize = New System.Drawing.Size(292, 160)
        Me.Text = "Help Provider Demonstration"

    End Sub
End Class

Observações

Cada instância de HelpProvider mantém uma coleção de referências aos controlos associados. Para associar um ficheiro de Ajuda ao HelpProvider, defina a HelpNamespace propriedade. Especifica o tipo de Ajuda fornecido chamando o SetHelpNavigator método e fornecendo um HelpNavigator valor para o controlo especificado. Fornece a palavra-chave ou o tema da Ajuda ligando para o SetHelpKeyword método. Para abrir a Ajuda a um tópico específico, a palavra-chave deve ser passada na forma topicName.htm.

Para associar uma cadeia específica de Ajuda a um controlo, use o SetHelpString método. A cadeia que associa a um controlo usando este método é exibida numa janela pop-up quando o utilizador pressiona a tecla F1 enquanto o controlo está em foco.

Se a HelpNamespace propriedade não tiver sido definida, deve usar o SetHelpString método para fornecer o texto de Ajuda. Se tiver definido ambos HelpNamespace e a cadeia de Ajuda, a Ajuda baseada na HelpNamespace terá prioridade.

HelpProvider chama métodos na Help classe para fornecer funcionalidade de Ajuda.

Construtores

Name Description
HelpProvider()

Inicializa uma nova instância da HelpProvider classe.

Propriedades

Name Description
CanRaiseEvents

Obtém um valor que indica se o componente pode gerar um evento.

(Herdado de Component)
Container

Obtém o IContainer que contém o Component.

(Herdado de Component)
DesignMode

Obtém um valor que indica se o Component está atualmente em modo de design.

(Herdado de Component)
Events

Obtém a lista de gestores de eventos que estão ligados a isto Component.

(Herdado de Component)
HelpNamespace

Recebe ou define um valor que especifica o nome do ficheiro de Ajuda associado a este HelpProvider objeto.

Site

Obtém ou define o ISite do Component.

(Herdado de Component)
Tag

Obtém ou define o objeto que contém dados suplementares sobre o HelpProvider.

Métodos

Name Description
CanExtend(Object)

Especifica se este objeto pode fornecer as suas propriedades de extensor ao objeto especificado.

CreateObjRef(Type)

Cria um objeto que contém toda a informação relevante necessária para gerar um proxy usado para comunicar com um objeto remoto.

(Herdado de MarshalByRefObject)
Dispose()

Liberta todos os recursos utilizados pelo Component.

(Herdado de Component)
Dispose(Boolean)

Liberta os recursos não geridos usados pelo Component e opcionalmente liberta os recursos geridos.

(Herdado de Component)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetHelpKeyword(Control)

Devolve a palavra-chave Ajuda para o controlo especificado.

GetHelpNavigator(Control)

Devolve a configuração atual HelpNavigator para o controlo especificado.

GetHelpString(Control)

Devolve o conteúdo da janela pop-up de Ajuda para o controlo especificado.

GetLifetimeService()

Recupera o objeto de serviço de tempo de vida atual que controla a política de vida útil neste caso.

(Herdado de MarshalByRefObject)
GetService(Type)

Devolve um objeto que representa um serviço fornecido pelo Component ou pelo seu Container.

(Herdado de Component)
GetShowHelp(Control)

Devolve um valor que indica se a Ajuda do controlo especificado deve ser apresentada.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
InitializeLifetimeService()

Obtém-se um objeto de serviço vitalício para controlar a apólice vitalícia neste caso.

(Herdado de MarshalByRefObject)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
MemberwiseClone(Boolean)

Cria uma cópia superficial do objeto atual MarshalByRefObject .

(Herdado de MarshalByRefObject)
ResetShowHelp(Control)

Remove a Ajuda associada ao controlo especificado.

SetHelpKeyword(Control, String)

Especifica a palavra-chave usada para obter Ajuda quando o utilizador invoca Ajuda para o controlo especificado.

SetHelpNavigator(Control, HelpNavigator)

Especifica o comando Ajuda a usar ao recuperar Ajuda do ficheiro Ajuda para o controlo especificado.

SetHelpString(Control, String)

Especifica a cadeia de ajuda associada ao controlo especificado.

SetShowHelp(Control, Boolean)

Especifica se a Ajuda é exibida para o controlo especificado.

ToString()

Devolve uma cadeia que representa a corrente HelpProvider.

evento

Name Description
Disposed

Ocorre quando o componente é eliminado por uma chamada ao Dispose() método.

(Herdado de Component)

Aplica-se a

Ver também