IHelpService Schnittstelle

Definition

Stellt Methoden zum Anzeigen von Hilfethemen sowie zum Hinzufügen und Entfernen von Hilfeschlüsselwörtern zur Entwurfszeit bereit.Provides methods for showing Help topics and adding and removing Help keywords at design time.

public interface class IHelpService
public interface IHelpService
type IHelpService = interface
Public Interface IHelpService

Beispiele

Im folgenden Beispiel wird ein Designer veranschaulicht, der das verwendet IHelpService , um Hilfe Kontext Attribute für das enthaltene Steuerelement hinzuzufügen und zu entfernen.The following example demonstrates a designer that uses the IHelpService to add and remove Help context attributes for the included control. Um dieses Beispiel zu verwenden, kompilieren Sie es in eine Klassenbibliothek, und fügen Sie eine Instanz des-Steuer Elements hinzu Form .To use this sample, compile it to a class library and add an instance of the control to a Form. Wenn Sie in der Entwurfs Ansicht die Komponente auswählen und F1 drücken, wird versucht, relevante Hilfe Themen auf der Grundlage des aktuellen Hilfe Kontext Schlüsselworts oder der Schlüsselwörter zu suchen.In design view, selecting the component and pressing F1 attempts to look up relevant Help topics based on the current Help context keyword or keywords. Klicken Sie mit der rechten Maustaste auf die Komponente, und das Kontextmenü zeigt Befehle an, einschließlich zwei benutzerdefinierter DesignerVerb Befehle namens Add IHelpService Help Keyword und Remove IHelpService Help Keyword .Right-click the component and the shortcut menu displays commands, including two custom DesignerVerb commands named Add IHelpService Help Keyword and Remove IHelpService Help Keyword. Diese Befehle können verwendet werden, um ein Hilfe Kontext Schlüsselwort des Werts "IHelpService" hinzuzufügen oder zu entfernen, das versucht, das IHelpService Thema beim Drücken von F1 aufzuräumen.These commands can be used to add or remove a Help context keyword of the value "IHelpService", which attempts to raise the IHelpService topic when F1 is pressed.

#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

Hinweise

Die Entwurfszeit Umgebung stellt ein Hilfesystem bereit, das versucht, relevante Hilfe Themen zu suchen, die angezeigt werden, wenn ein Benutzer F1 drückt.The design-time environment provides a Help system that attempts to locate relevant Help topics to display when a user presses F1. Das Hilfesystem verwaltet eine Reihe aktueller Kontext Schlüsselwörter, die verwendet werden, um relevante Themen zu identifizieren, wenn Hilfe angefordert wird.The Help system maintains a set of current context keywords that are used to identify relevant topics if Help is requested. Standardmäßig werden Schlüsselwörter ausgewählten Klassen Objekten und Eigenschaften von Objekten in der Entwurfszeit Umgebung zugeordnet.By default, keywords are associated with selected class objects and properties of objects in the design time environment. Das Standard Schlüsselwort für eine Komponente oder Eigenschaft ist der voll qualifizierte Klassen-oder Eigenschaftsname.The default keyword for a component or property is its fully qualified class or property name. Bestimmte Schlüsselwörter sind auch bestimmten Modi zugeordnet, z. b. Wenn mehrere Objekte ausgewählt werden.Specific keywords are also associated with certain modes, such as when multiple objects are selected. Wenn eine benutzerdefinierte Hilfe Sammlung in die Entwurfszeit Umgebung integriert ist, indem Sie für einen externen Hilfe Anbieter konfiguriert wird, kann ein Dokumentations Anbieter ein Thema für eine bestimmte Komponenten Klasse oder Eigenschaft mit einem Schlüsselwort verknüpfen, das aus dem voll qualifizierten Typ oder Elementnamen des Elements besteht.If a custom Help collection is integrated with the design-time environment by configuring it for an external help provider, a documentation provider can associate a topic for a specific component class or property with a keyword consisting of the item's fully qualified type or member name.

IHelpServiceKann verwendet werden, um den Hilfe Dienst mithilfe der-Methode mit einem angegebenen Schlüsselwort aufzurufen ShowHelpFromKeyword , oder um mithilfe der-Methode ein Hilfethema aus einer angegebenen URL aufzurufen ShowHelpFromUrl .The IHelpService can be used to invoke the help service with a specified keyword using the ShowHelpFromKeyword method, or to invoke a help topic from a specified URL using the ShowHelpFromUrl method.

Der IHelpService kann auch verwendet werden, um Hilfe Schlüsselwörter zur Entwurfszeit hinzuzufügen oder zu entfernen.The IHelpService can also be used to add or remove Help keywords at design time. Wenn Sie eine Komponente oder Eigenschaft zur Entwurfszeit auswählen, wird ein Standardkontext Schlüsselwort festgelegt, das aus dem voll qualifizierten Typ oder Elementnamen der Auswahl besteht, und die Schlüsselwörter für alle zuvor ausgewählten und nicht mehr ausgewählten Komponenten oder Eigenschaften werden entfernt.Selecting a component or property at design time sets a default context keyword consisting of the fully qualified type or member name of the selection, and removes the keywords for any previously selected and no longer selected components or properties.

Da das Hilfesystem benutzerdefinierte Hilfe Schlüsselwörter nicht automatisch entfernt, müssen Sie ein benutzerdefiniertes Schlüsselwort explizit entfernen, wenn es nicht mehr angewendet wird.Because the Help system does not automatically remove custom Help keywords, you must explicitly remove a custom keyword when it no longer applies. Sie können die von der-Schnittstelle definierten Ereignisse überwachen ISelectionService , um zu bestimmen, wann eine Komponentenauswahl geändert wird.You can monitor the events defined by the ISelectionService interface to determine when a component selection changes. Basierend auf diesen Ereignissen können Sie ein Hilfe Kontext Attribut für eine Komponente hinzufügen, wenn Sie ausgewählt ist, und dann das Hilfe Kontext Attribut entfernen, wenn die Auswahl nicht mehr die Komponente enthält.Based on those events, you can add a Help context attribute for a component when it is selected and then remove the Help context attribute when the selection no longer includes the component.

Methoden

AddContextAttribute(String, String, HelpKeywordType)

Fügt dem Dokument ein Kontextattribut hinzu.Adds a context attribute to the document.

ClearContextAttributes()

Entfernt alle vorhandenen Kontextattribute aus dem Dokument.Removes all existing context attributes from the document.

CreateLocalContext(HelpContextType)

Erstellt einen lokalen IHelpService zum Verwalten von untergeordneten Kontexten.Creates a local IHelpService to manage subcontexts.

RemoveContextAttribute(String, String)

Entfernt ein zuvor hinzugefügtes Kontextattribut.Removes a previously added context attribute.

RemoveLocalContext(IHelpService)

Entfernt einen Kontext, der mit einem CreateLocalContext(HelpContextType) erstellt wurde.Removes a context created with CreateLocalContext(HelpContextType).

ShowHelpFromKeyword(String)

Zeigt das Hilfethema an, das dem angegebenen Schlüsselwort entspricht.Shows the Help topic that corresponds to the specified keyword.

ShowHelpFromUrl(String)

Zeigt das Hilfethema an, das der angegebenen URL entspricht.Shows the Help topic that corresponds to the specified URL.

Gilt für:

Siehe auch