Action (Interfaz)
Representa una acción de etiqueta inteligente de un documento de Word que se personaliza usando las herramientas de desarrollo de Office incluidas en Visual Studio.
Espacio de nombres: Microsoft.Office.Tools.Word
Ensamblado: Microsoft.Office.Tools.Word (en Microsoft.Office.Tools.Word.dll)
Sintaxis
'Declaración
<GuidAttribute("1886a0c6-4e1a-4b8f-8304-5143462fe2b6")> _
Public Interface Action _
Inherits ActionBase
[GuidAttribute("1886a0c6-4e1a-4b8f-8304-5143462fe2b6")]
public interface Action : ActionBase
El tipo Action expone los siguientes miembros.
Propiedades
Nombre | Descripción | |
---|---|---|
Caption | Obtiene o establece el nombre de la acción, tal como se muestra en el menú de etiquetas inteligentes. (Se hereda de ActionBase). |
Arriba
Eventos
Nombre | Descripción | |
---|---|---|
BeforeCaptionShow | Tiene lugar cuando el usuario hace clic en el icono de las etiquetas inteligentes, antes de que se muestre el menú de etiquetas inteligentes. | |
Click | Aparece cuando se hace clic en la acción del menú de etiquetas inteligentes. |
Arriba
Comentarios
Las acciones son las opciones que están disponibles en el menú contextual de la etiqueta inteligente cuando se reconoce una etiqueta inteligente de un tipo determinado. Para crear una acción, use el método Globals.Factory.CreateAction para crear un objeto Action. Para obtener más información, vea Arquitectura de las etiquetas inteligentes.
Nota
Esta interfaz está implementada por el motor en tiempo de ejecución de Visual Studio Tools para Office. No está prevista su implementación en el código. Para obtener más información, vea Información general sobre el Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office.
Uso
Este tipo está pensado para su uso sólo en proyectos para Word 2007. Las etiquetas inteligentes están desusadas en Word 2010. Para obtener más información, vea Información general sobre etiquetas inteligentes.
Esta documentación describe la versión de este tipo que se utiliza en los proyectos de Office destinados a .NET Framework 4. En los proyectos destinados a .NET Framework 3.5, este tipo puede tener miembros diferentes y es posible que los ejemplos de código proporcionados para dicho tipo no funcionen. Para informarse sobre este tipo en los proyectos destinados a .NET Framework 3.5, vea la siguiente sección de referencia en la documentación de Visual Studio 2008: https://go.microsoft.com/fwlink/?LinkId=160658.
Ejemplos
En el ejemplo de código siguiente se muestra cómo crear una etiqueta inteligente con una acción. La acción de la etiqueta inteligente modifica el título del menú de la acción en tiempo de ejecución y muestra la ubicación del texto reconocido.
Private WithEvents displayAddress As Microsoft.Office.Tools.Word.Action
Private Sub AddSmartTag()
' Create the smart tag for .NET Framework 4 projects.
Dim smartTagDemo As Microsoft.Office.Tools.Word.SmartTag = Globals.Factory.CreateSmartTag(
"www.microsoft.com/Demo#DemoSmartTag",
"Demonstration Smart Tag")
' For .NET Framework 3.5 projects, use the following code to create the smart tag.
' Dim smartTagDemo As New _
' Microsoft.Office.Tools.Word.SmartTag( _
' "www.microsoft.com/Demo#DemoSmartTag", _
' "Demonstration Smart Tag")
' Specify the terms to recognize.
smartTagDemo.Terms.Add("term")
smartTagDemo.Terms.Add("recognize")
' Create the action for .NET Framework 4 projects.
displayAddress = Globals.Factory.CreateAction("To be replaced")
' For .NET Framework 3.5 projects, use the following code to create the action.
' displayAddress = New Microsoft.Office.Tools.Word.Action("To be replaced")
' Add the action to the smart tag.
smartTagDemo.Actions = New Microsoft.Office.Tools.Word.Action() { _
displayAddress}
' Add the smart tag.
Me.VstoSmartTags.Add(smartTagDemo)
End Sub
Private Sub DisplayAddress_BeforeCaptionShow(ByVal sender As Object, _
ByVal e As Microsoft.Office.Tools.Word.ActionEventArgs) _
Handles displayAddress.BeforeCaptionShow
Dim clickedAction As Microsoft.Office.Tools.Word.Action = _
TryCast(sender, Microsoft.Office.Tools.Word.Action)
If clickedAction IsNot Nothing Then
clickedAction.Caption = "Display the location of " & e.Text
End If
End Sub
Private Sub DisplayAddress_Click(ByVal sender As Object, _
ByVal e As Microsoft.Office.Tools.Word.ActionEventArgs) _
Handles displayAddress.Click
Dim termStart As Integer = e.Range.Start
Dim termEnd As Integer = e.Range.End
MsgBox("The recognized text '" & e.Text & _
"' begins at position " & termStart & _
" and ends at position " & termEnd)
End Sub
private Microsoft.Office.Tools.Word.Action displayAddress;
private void AddSmartTag()
{
// Create the smart tag for .NET Framework 4 projects.
Microsoft.Office.Tools.Word.SmartTag smartTagDemo =
Globals.Factory.CreateSmartTag(
"www.microsoft.com/Demo#DemoSmartTag",
"Demonstration Smart Tag");
// For .NET Framework 3.5 projects, use the following code to create the smart tag.
// Microsoft.Office.Tools.Word.SmartTag smartTagDemo =
// new Microsoft.Office.Tools.Word.SmartTag(
// "www.microsoft.com/Demo#DemoSmartTag",
// "Demonstration Smart Tag");
// Specify the terms to recognize.
smartTagDemo.Terms.Add("term");
smartTagDemo.Terms.Add("recognize");
// Create the action for .NET Framework 4 projects.
displayAddress = Globals.Factory.CreateAction("To be replaced");
// For .NET Framework 3.5 projects, use the following code to create the action.
// displayAddress = new Microsoft.Office.Tools.Word.Action("To be replaced");
// Add the action to the smart tag.
smartTagDemo.Actions = new Microsoft.Office.Tools.Word.Action[] {
displayAddress };
// Add the smart tag.
this.VstoSmartTags.Add(smartTagDemo);
displayAddress.BeforeCaptionShow += new
Microsoft.Office.Tools.Word.BeforeCaptionShowEventHandler(
displayAddress_BeforeCaptionShow);
displayAddress.Click += new
Microsoft.Office.Tools.Word.ActionClickEventHandler(
displayAddress_Click);
}
void displayAddress_BeforeCaptionShow(object sender,
Microsoft.Office.Tools.Word.ActionEventArgs e)
{
Microsoft.Office.Tools.Word.Action clickedAction =
sender as Microsoft.Office.Tools.Word.Action;
if (clickedAction != null)
{
clickedAction.Caption = "Display the location of " +
e.Text;
}
}
void displayAddress_Click(object sender,
Microsoft.Office.Tools.Word.ActionEventArgs e)
{
int termStart = e.Range.Start;
int termEnd = e.Range.End;
System.Windows.Forms.MessageBox.Show("The recognized text '" + e.Text +
"' begins at position " + termStart.ToString() +
" and ends at position " + termEnd.ToString());
}
Vea también
Referencia
Microsoft.Office.Tools.Word (Espacio de nombres)
Otros recursos
Arquitectura de las etiquetas inteligentes
Cómo: Agregar etiquetas inteligentes a documentos de Word
Cómo: Crear etiquetas inteligentes con reconocedores personalizados en Word y .NET Framework 3.5
Tutorial: Crear una etiqueta inteligente usando una personalización de nivel de documento.