IHelpService Antarmuka
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menyediakan metode untuk menampilkan topik Bantuan dan menambahkan dan menghapus kata kunci Bantuan pada waktu desain.
public interface class IHelpService
public interface IHelpService
type IHelpService = interface
Public Interface IHelpService
Contoh
Contoh berikut menunjukkan perancang yang menggunakan IHelpService untuk menambahkan dan menghapus atribut konteks Bantuan untuk kontrol yang disertakan. Untuk menggunakan sampel ini, kompilasi ke pustaka kelas dan tambahkan instans kontrol ke Form. Dalam tampilan desain, memilih komponen dan menekan F1 mencoba mencari topik Bantuan yang relevan berdasarkan kata kunci atau kata kunci konteks Bantuan saat ini. Klik kanan komponen dan menu pintasan menampilkan perintah, termasuk dua perintah kustom DesignerVerb bernama Add IHelpService Help Keyword
dan Remove IHelpService Help Keyword
. Perintah ini dapat digunakan untuk menambahkan atau menghapus kata kunci konteks Bantuan dari nilai "IHelpService", yang mencoba menaikkan IHelpService topik saat F1 ditekan.
#using <System.Windows.Forms.dll>
#using <System.Drawing.dll>
#using <System.Design.dll>
#using <System.dll>
using namespace System;
using namespace System::ComponentModel;
using namespace System::ComponentModel::Design;
using namespace System::Drawing;
using namespace System::IO;
using namespace System::Windows::Forms;
using namespace System::Windows::Forms::Design;
public ref class HelpDesigner: public System::Windows::Forms::Design::ControlDesigner
{
public:
HelpDesigner(){}
property System::ComponentModel::Design::DesignerVerbCollection^ Verbs
{
virtual System::ComponentModel::Design::DesignerVerbCollection^ get() override
{
array<DesignerVerb^>^temp0 = {gcnew DesignerVerb( "Add IHelpService Help Keyword",gcnew EventHandler( this, &HelpDesigner::addKeyword ) ),gcnew DesignerVerb( "Remove IHelpService Help Keyword",gcnew EventHandler( this, &HelpDesigner::removeKeyword ) )};
return gcnew DesignerVerbCollection( temp0 );
}
}
private:
void addKeyword( Object^ /*sender*/, EventArgs^ /*e*/ )
{
IHelpService^ hs = dynamic_cast<IHelpService^>(this->Control->Site->GetService( IHelpService::typeid ));
hs->AddContextAttribute( "keyword", "IHelpService", HelpKeywordType::F1Keyword );
}
void removeKeyword( Object^ /*sender*/, EventArgs^ /*e*/ )
{
IHelpService^ hs = dynamic_cast<IHelpService^>(this->Control->Site->GetService( IHelpService::typeid ));
hs->RemoveContextAttribute( "keyword", "IHelpService" );
}
};
[Designer(HelpDesigner::typeid)]
public ref class HelpTestControl: public System::Windows::Forms::UserControl
{
public:
HelpTestControl()
{
this->Size = System::Drawing::Size( 320, 100 );
this->BackColor = Color::White;
}
protected:
virtual void OnPaint( System::Windows::Forms::PaintEventArgs^ e ) override
{
Brush^ brush = gcnew SolidBrush( Color::Blue );
e->Graphics->DrawString( "IHelpService Example Designer Control", gcnew System::Drawing::Font( FontFamily::GenericMonospace,10 ), brush, 5, 5 );
e->Graphics->DrawString( "Right-click this component for", gcnew System::Drawing::Font( FontFamily::GenericMonospace,8 ), brush, 5, 25 );
e->Graphics->DrawString( "add/remove Help context keyword commands.", gcnew System::Drawing::Font( FontFamily::GenericMonospace,8 ), brush, 5, 35 );
e->Graphics->DrawString( "Press F1 while this component is", gcnew System::Drawing::Font( FontFamily::GenericMonospace,8 ), brush, 5, 55 );
e->Graphics->DrawString( "selected to raise Help topics for", gcnew System::Drawing::Font( FontFamily::GenericMonospace,8 ), brush, 5, 65 );
e->Graphics->DrawString( "the current keyword or keywords", gcnew System::Drawing::Font( FontFamily::GenericMonospace,8 ), brush, 5, 75 );
}
};
using System;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using System.IO;
using System.Windows.Forms;
using System.Windows.Forms.Design;
namespace IHelpServiceSample
{
public class HelpDesigner : System.Windows.Forms.Design.ControlDesigner
{
public HelpDesigner()
{
}
public override System.ComponentModel.Design.DesignerVerbCollection Verbs
{
get
{
return new DesignerVerbCollection( new DesignerVerb[] {
new DesignerVerb("Add IHelpService Help Keyword", new EventHandler(this.addKeyword)),
new DesignerVerb("Remove IHelpService Help Keyword", new EventHandler(this.removeKeyword))
} );
}
}
private void addKeyword(object sender, EventArgs e)
{
IHelpService hs = (IHelpService) this.Control.Site.GetService(typeof(IHelpService));
hs.AddContextAttribute("keyword", "IHelpService", HelpKeywordType.F1Keyword);
}
private void removeKeyword(object sender, EventArgs e)
{
IHelpService hs = (IHelpService) this.Control.Site.GetService(typeof(IHelpService));
hs.RemoveContextAttribute("keyword", "IHelpService");
}
}
[Designer(typeof(HelpDesigner))]
public class HelpTestControl : System.Windows.Forms.UserControl
{
public HelpTestControl()
{
this.Size = new Size(320, 100);
this.BackColor = Color.White;
}
protected override void OnPaint(System.Windows.Forms.PaintEventArgs e)
{
Brush brush = new SolidBrush(Color.Blue);
e.Graphics.DrawString("IHelpService Example Designer Control", new Font( FontFamily.GenericMonospace, 10 ), brush, 5, 5);
e.Graphics.DrawString("Right-click this component for", new Font( FontFamily.GenericMonospace, 8 ), brush, 5, 25);
e.Graphics.DrawString("add/remove Help context keyword commands.", new Font( FontFamily.GenericMonospace, 8 ), brush, 5, 35);
e.Graphics.DrawString("Press F1 while this component is", new Font( FontFamily.GenericMonospace, 8 ), brush, 5, 55);
e.Graphics.DrawString("selected to raise Help topics for", new Font( FontFamily.GenericMonospace, 8 ), brush, 5, 65);
e.Graphics.DrawString("the current keyword or keywords", new Font( FontFamily.GenericMonospace, 8 ), brush, 5, 75);
}
}
}
Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Drawing
Imports System.IO
Imports System.Windows.Forms
Imports System.Windows.Forms.Design
Namespace IHelpServiceSample
Public Class HelpDesigner
Inherits System.Windows.Forms.Design.ControlDesigner
Public Sub New()
End Sub
Public Overrides ReadOnly Property Verbs() As System.ComponentModel.Design.DesignerVerbCollection
Get
Return New DesignerVerbCollection(New DesignerVerb() {New DesignerVerb("Add IHelpService Help Keyword", AddressOf Me.addKeyword), New DesignerVerb("Remove IHelpService Help Keyword", AddressOf Me.removeKeyword)})
End Get
End Property
Private Sub addKeyword(ByVal sender As Object, ByVal e As EventArgs)
Dim hs As IHelpService = CType(Me.Control.Site.GetService(GetType(IHelpService)), IHelpService)
hs.AddContextAttribute("keyword", "IHelpService", HelpKeywordType.F1Keyword)
End Sub
Private Sub removeKeyword(ByVal sender As Object, ByVal e As EventArgs)
Dim hs As IHelpService = CType(Me.Control.Site.GetService(GetType(IHelpService)), IHelpService)
hs.RemoveContextAttribute("keyword", "IHelpService")
End Sub
End Class
<Designer(GetType(HelpDesigner))> _
Public Class HelpTestControl
Inherits System.Windows.Forms.UserControl
Public Sub New()
Me.Size = New Size(320, 100)
Me.BackColor = Color.White
End Sub
Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
Dim brush As New SolidBrush(Color.Blue)
e.Graphics.DrawString("IHelpService Example Designer Control", New Font(FontFamily.GenericMonospace, 10), brush, 5, 5)
e.Graphics.DrawString("Right-click this component for", New Font(FontFamily.GenericMonospace, 8), brush, 5, 25)
e.Graphics.DrawString("add/remove Help context keyword commands.", New Font(FontFamily.GenericMonospace, 8), brush, 5, 35)
e.Graphics.DrawString("Press F1 while this component is", New Font(FontFamily.GenericMonospace, 8), brush, 5, 55)
e.Graphics.DrawString("selected to raise Help topics for", New Font(FontFamily.GenericMonospace, 8), brush, 5, 65)
e.Graphics.DrawString("the current keyword or keywords", New Font(FontFamily.GenericMonospace, 8), brush, 5, 75)
End Sub
End Class
End Namespace 'IHelpServiceSample
Keterangan
Lingkungan waktu desain menyediakan sistem Bantuan yang mencoba menemukan topik Bantuan yang relevan untuk ditampilkan saat pengguna menekan F1. Sistem Bantuan mempertahankan sekumpulan kata kunci konteks saat ini yang digunakan untuk mengidentifikasi topik yang relevan jika Bantuan diminta. Secara default, kata kunci dikaitkan dengan objek kelas yang dipilih dan properti objek di lingkungan waktu desain. Kata kunci default untuk komponen atau properti adalah kelas atau nama properti yang sepenuhnya memenuhi syarat. Kata kunci tertentu juga dikaitkan dengan mode tertentu, seperti ketika beberapa objek dipilih. Jika kumpulan Bantuan kustom terintegrasi dengan lingkungan waktu desain dengan mengonfigurasinya untuk penyedia bantuan eksternal, penyedia dokumentasi dapat mengaitkan topik untuk kelas komponen atau properti tertentu dengan kata kunci yang terdiri dari jenis item yang sepenuhnya memenuhi syarat atau nama anggota.
IHelpService dapat digunakan untuk memanggil layanan bantuan dengan kata kunci tertentu menggunakan ShowHelpFromKeyword metode , atau untuk memanggil topik bantuan dari URL tertentu menggunakan ShowHelpFromUrl metode .
IHelpService juga dapat digunakan untuk menambahkan atau menghapus kata kunci Bantuan pada waktu desain. Memilih komponen atau properti pada waktu desain menetapkan kata kunci konteks default yang terdiri dari jenis atau nama anggota pilihan yang sepenuhnya memenuhi syarat, dan menghapus kata kunci untuk komponen atau properti yang dipilih sebelumnya dan tidak lagi dipilih.
Karena sistem Bantuan tidak secara otomatis menghapus kata kunci Bantuan kustom, Anda harus secara eksplisit menghapus kata kunci kustom saat tidak lagi berlaku. Anda dapat memantau peristiwa yang ditentukan oleh ISelectionService antarmuka untuk menentukan kapan pilihan komponen berubah. Berdasarkan peristiwa tersebut, Anda dapat menambahkan atribut konteks Bantuan untuk komponen saat dipilih lalu menghapus atribut konteks Bantuan saat pilihan tidak lagi menyertakan komponen.
Metode
AddContextAttribute(String, String, HelpKeywordType) |
Menambahkan atribut konteks ke dokumen. |
ClearContextAttributes() |
Menghapus semua atribut konteks yang ada dari dokumen. |
CreateLocalContext(HelpContextType) |
Membuat lokal IHelpService untuk mengelola subkonteks. |
RemoveContextAttribute(String, String) |
Menghapus atribut konteks yang ditambahkan sebelumnya. |
RemoveLocalContext(IHelpService) |
Menghapus konteks yang dibuat dengan CreateLocalContext(HelpContextType). |
ShowHelpFromKeyword(String) |
Memperlihatkan topik Bantuan yang sesuai dengan kata kunci yang ditentukan. |
ShowHelpFromUrl(String) |
Memperlihatkan topik Bantuan yang sesuai dengan URL yang ditentukan. |