HelpProvider 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
为控件提供弹出帮助或联机帮助。
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
- 继承
- 实现
示例
下面的代码示例演示如何使用 HelpProvider 类在包含四个地址字段的窗体上显示上下文相关的帮助。 该示例使用 SetHelpString 方法设置帮助工具提示文本。 使用上下文相关的“帮助”按钮并单击地址字段上的“帮助”光标时,“帮助工具提示”将显示指定文本。 将焦点放在地址字段中按 F1 键时,将显示 mspaint.chm 帮助文件, HelpNamespace 因为 属性已设置为 mspaint.chm。 SetShowHelp为每个地址控件调用 方法,以标识其是否有可用的帮助内容。
#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
注解
的每个实例 HelpProvider 都维护对与其关联的控件的引用的集合。 若要将帮助文件与 关联, HelpProvider请 HelpNamespace 设置 属性。 通过调用 SetHelpNavigator 方法并为指定的控件提供值来 HelpNavigator 指定提供的帮助类型。 通过调用 SetHelpKeyword 方法提供帮助的关键字或主题。 若要打开特定主题的帮助,关键字应以 topicName.htm的形式传递。
若要将特定帮助字符串与控件相关联,请使用 SetHelpString 方法。 当用户按下 F1 键而控件具有焦点时,使用此方法与控件关联的字符串将显示在弹出窗口中。
如果尚未设置 属性 HelpNamespace ,则必须使用 SetHelpString 方法提供帮助文本。 如果同时 HelpNamespace 设置了 和 帮助字符串,则基于 HelpNamespace 的帮助优先。
HelpProvider 调用 类上 Help 的方法以提供帮助功能。
构造函数
HelpProvider() |
初始化 HelpProvider 类的新实例。 |
属性
CanRaiseEvents |
获取一个指示组件是否可以引发事件的值。 (继承自 Component) |
Container |
获取包含 IContainer 的 Component。 (继承自 Component) |
DesignMode |
获取一个值,用以指示 Component 当前是否处于设计模式。 (继承自 Component) |
Events |
获取附加到此 Component 的事件处理程序的列表。 (继承自 Component) |
HelpNamespace |
获取或设置一个值,该值指定与此 HelpProvider 对象关联的帮助文件名。 |
Site | (继承自 Component) |
Tag |
获取或设置包含有关 HelpProvider 的补充数据的对象。 |
方法
事件
Disposed |
在通过调用 Dispose() 方法释放组件时发生。 (继承自 Component) |