HelpProvider Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Обеспечивает для элементов управления всплывающее окно справки или окно оперативной справки.
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 |
Получает или задает ISite объекта Component. (Унаследовано от Component) |
Tag |
Получает или задает объект, содержащий дополнительные данные о HelpProvider. |
Методы
CanExtend(Object) |
Определяет, может ли этот объект предоставить имеющиеся у него свойства средств расширения указанному объекту. |
CreateObjRef(Type) |
Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом. (Унаследовано от MarshalByRefObject) |
Dispose() |
Освобождает все ресурсы, занятые модулем Component. (Унаследовано от Component) |
Dispose(Boolean) |
Освобождает неуправляемые ресурсы, используемые объектом Component, а при необходимости освобождает также управляемые ресурсы. (Унаследовано от Component) |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetHelpKeyword(Control) |
Возвращает ключевое слово справки для указанного элемента управления. |
GetHelpNavigator(Control) |
Возвращает текущий параметр HelpNavigator для указанного элемента управления. |
GetHelpString(Control) |
Возвращает содержимое всплывающего окна справки для указанного элемента управления. |
GetLifetimeService() |
Устаревшие..
Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра. (Унаследовано от MarshalByRefObject) |
GetService(Type) |
Возвращает объект, представляющий службу, предоставляемую классом Component или классом Container. (Унаследовано от Component) |
GetShowHelp(Control) |
Возвращает значение, показывающее, нужно ли отображать справку для указанного элемента управления. |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
InitializeLifetimeService() |
Устаревшие..
Получает объект службы времени существования для управления политикой времени существования для этого экземпляра. (Унаследовано от MarshalByRefObject) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
MemberwiseClone(Boolean) |
Создает неполную копию текущего объекта MarshalByRefObject. (Унаследовано от MarshalByRefObject) |
ResetShowHelp(Control) |
Удаляет справку, связанную с указанным элементом управления. |
SetHelpKeyword(Control, String) |
Задает ключевое слово, используемое для извлечения справки при вызове пользователем справки для указанного элемента управления. |
SetHelpNavigator(Control, HelpNavigator) |
Задает команду справки, используемую при извлечении справки из файла справки для указанного элемента управления. |
SetHelpString(Control, String) |
Задает строку справки, связанную с указанным элементом управления. |
SetShowHelp(Control, Boolean) |
Определяет, отображается ли справка для указанного элемента управления. |
ToString() |
Возвращает строку, которая представляет текущий объект HelpProvider. |
События
Disposed |
Возникает при удалении компонента путем вызова метода Dispose(). (Унаследовано от Component) |