IHelpService Interfaz
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Proporciona métodos para mostrar los temas de Ayuda y para agregar y quitar palabras clave de Ayuda en tiempo de diseño.
public interface class IHelpService
public interface IHelpService
type IHelpService = interface
Public Interface IHelpService
Ejemplos
En el ejemplo siguiente se muestra un diseñador que usa para IHelpService agregar y quitar atributos de contexto de Ayuda para el control incluido. Para usar este ejemplo, comppílelo en una biblioteca de clases y agregue una instancia del control a .Form En la vista de diseño, seleccione el componente y presione F1 intenta buscar temas de Ayuda relevantes en función de la palabra clave o palabras clave del contexto de ayuda actuales. Haga clic con el botón derecho en el componente y el menú contextual muestra comandos, incluidos dos comandos personalizados DesignerVerb denominados Add IHelpService Help Keyword
y Remove IHelpService Help Keyword
. Estos comandos se pueden usar para agregar o quitar una palabra clave de contexto de Ayuda del valor "IHelpService", que intenta generar el IHelpService tema cuando se presiona F1.
#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
Comentarios
El entorno en tiempo de diseño proporciona un sistema de Ayuda que intenta localizar los temas de Ayuda pertinentes para mostrar cuando un usuario presiona F1. El sistema de ayuda mantiene un conjunto de palabras clave de contexto actuales que se usan para identificar temas relevantes si se solicita ayuda. De forma predeterminada, las palabras clave están asociadas a objetos de clase seleccionados y propiedades de objetos en el entorno en tiempo de diseño. La palabra clave predeterminada para un componente o propiedad es su nombre completo de clase o propiedad. Las palabras clave específicas también están asociadas a determinados modos, como cuando se seleccionan varios objetos. Si una colección de Ayuda personalizada se integra con el entorno en tiempo de diseño configurándolo para un proveedor de ayuda externo, un proveedor de documentación puede asociar un tema para una propiedad o clase de componente específica con una palabra clave que consta del tipo completo o el nombre de miembro del elemento.
IHelpService se puede usar para invocar el servicio de ayuda con una palabra clave especificada mediante el ShowHelpFromKeyword método , o para invocar un tema de ayuda desde una dirección URL especificada mediante el ShowHelpFromUrl método .
IHelpService También se puede usar para agregar o quitar palabras clave de Ayuda en tiempo de diseño. Al seleccionar un componente o una propiedad en tiempo de diseño, se establece una palabra clave de contexto predeterminada que consta del tipo completo o el nombre de miembro de la selección, y quita las palabras clave de los componentes o propiedades seleccionados previamente y ya no seleccionados.
Dado que el sistema de ayuda no quita automáticamente las palabras clave de Ayuda personalizadas, debe quitar explícitamente una palabra clave personalizada cuando ya no se aplique. Puede supervisar los eventos definidos por la ISelectionService interfaz para determinar cuándo cambia una selección de componentes. En función de esos eventos, puede agregar un atributo de contexto de Ayuda para un componente cuando esté seleccionado y, a continuación, quitar el atributo de contexto de Ayuda cuando la selección ya no incluya el componente.
Métodos
AddContextAttribute(String, String, HelpKeywordType) |
Agrega un atributo de contexto al documento. |
ClearContextAttributes() |
Quita del documento todos los atributos de contexto existentes. |
CreateLocalContext(HelpContextType) |
Crea una interfaz IHelpService local para administrar subcontextos. |
RemoveContextAttribute(String, String) |
Quita un atributo de contexto agregado previamente. |
RemoveLocalContext(IHelpService) |
Quita un contexto creado con CreateLocalContext(HelpContextType). |
ShowHelpFromKeyword(String) |
Muestra el tema de Ayuda que corresponde a la palabra clave especificada. |
ShowHelpFromUrl(String) |
Muestra el tema de Ayuda que corresponde a la dirección URL especificada. |