Interface Action

Representa uma ação de marca inteligente em uma pasta de trabalho do Excel que seja adequada usando as ferramentas de desenvolvimento do Office no Visual Studio.

Namespace:  Microsoft.Office.Tools.Excel
Assembly:  Microsoft.Office.Tools.Excel (em Microsoft.Office.Tools.Excel.dll)

Sintaxe

'Declaração
<GuidAttribute("37e25b46-6941-4833-9b08-e692cf461982")> _
Public Interface Action _
    Inherits ActionBase
[GuidAttribute("37e25b46-6941-4833-9b08-e692cf461982")]
public interface Action : ActionBase

O tipo Action expõe os membros a seguir.

Propriedades

  Nome Descrição
Propriedade pública Caption Obtém ou define o nome de ação, como mostrado no menu de marca inteligente. Esse tipo ou membro está destinado a uso apenas em projetos do sistema Microsoft Office 2007. Marcas inteligentes estão preteridas no Office 2010.
. (Herdado de ActionBase.)

Superior

Eventos

  Nome Descrição
Evento público BeforeCaptionShow Ocorre depois que o usuário clica no ícone de marcas inteligentes, e antes da marca inteligente o menu é exibido. Esse tipo ou membro está destinado a uso apenas em projetos do sistema Microsoft Office 2007. Marcas inteligentes estão preteridas no Office 2010.
.
Evento público Click Ocorre quando a ação no menu de marca inteligente é clicado. Esse tipo ou membro está destinado a uso apenas em projetos do sistema Microsoft Office 2007. Marcas inteligentes estão preteridas no Office 2010.
.

Superior

Comentários

As ações são as opções disponíveis no menu de atalho de marcas inteligentes quando uma marca inteligente de qualquer tipo é reconhecida.Para criar uma ação, use o método de Globals.Factory.CreateAction para criar um objeto de Action .

ObservaçãoObservação

Essa interface é implementada pelo Visual Studio Tools for Office Runtime. Ela não se destina a ser implementada em seu código. Para obter mais informações, consulte Visual Studio Tools for Office visão geral sobre o tempo de execução.

Uso

Este tipo destina-se a ser usado apenas em projetos para Excel 2007.Marcas inteligentes são substituídas no Excel 2010.

Essa documentação descreve a versão desse tipo que é usada apenas nos projetos do Office direcionados ao .NET Framework 4 e ao .NET Framework 4.5. Em projetos direcionados ao .NET Framework 3.5, esse tipo pode ter membros diferentes e os exemplos de código fornecidos para este tipo talvez não funcionem. Para obter documentação sobre este tipo em projetos destinados ao .NET Framework 3.5, consulte a seguinte seção de referência na documentação do Visual Studio 2008: https://go.microsoft.com/fwlink/?LinkId=160658.

Exemplos

O exemplo de código a seguir cria SmartTag com Action que reconhece “venda termo” e a expressão regular [“I|i] ssue \ \ s de {5,6}”.A ação alterar a legenda do menu de ação em tempo de execução e exibe o endereço de texto que foi reconhecido.Para testar o exemplo, digite a cadeia de caracteres de “venda da palavra” 12345 " problema de uma célula e em “em outra célula, e tente a ação de marcas inteligentes.

WithEvents displayAddress As Microsoft.Office.Tools.Excel.Action

Private Sub AddSmartTag()

    Dim smartTagDemo As Microsoft.Office.Tools.Excel.SmartTag = _
        Globals.Factory.CreateSmartTag(
        "www.microsoft.com/Demo#DemoSmartTag",
        "Demonstration Smart Tag")

    ' Specify a term and an expression to recognize.
    smartTagDemo.Terms.Add("sale")
    smartTagDemo.Expressions.Add( _
        New System.Text.RegularExpressions.Regex( _
        "[I|i]ssue\s\d{5,6}"))

    displayAddress = Globals.Factory.CreateAction("To be replaced")

    ' Add the action to the smart tag.
    smartTagDemo.Actions = New Microsoft.Office.Tools.Excel.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.Excel.ActionEventArgs) _
    Handles DisplayAddress.BeforeCaptionShow

    Dim clickedAction As Microsoft.Office.Tools.Excel.Action = _
        TryCast(sender, Microsoft.Office.Tools.Excel.Action)

    If clickedAction IsNot Nothing Then
        clickedAction.Caption = "Display the address of " & e.Text
    End If
End Sub

Private Sub DisplayAddress_Click(ByVal sender As Object, _
    ByVal e As Microsoft.Office.Tools.Excel.ActionEventArgs) _
    Handles DisplayAddress.Click

    Dim smartTagAddress As String = e.Range.Address( _
        ReferenceStyle:=Excel.XlReferenceStyle.xlA1)
    MsgBox("The recognized text '" & e.Text & _
            "' is at range " & smartTagAddress)
End Sub
private Microsoft.Office.Tools.Excel.Action displayAddress;

private void AddSmartTag()
{
    Microsoft.Office.Tools.Excel.SmartTag smartTagDemo =
        Globals.Factory.CreateSmartTag(
            "www.microsoft.com/Demo#DemoSmartTag",
            "Demonstration Smart Tag");

    // Specify a term and an expression to recognize.
    smartTagDemo.Terms.Add("sale");
    smartTagDemo.Expressions.Add(
        new System.Text.RegularExpressions.Regex(
        @"[I|i]ssue\s\d{5,6}"));

    displayAddress = Globals.Factory.CreateAction("To be replaced");


    // Add the action to the smart tag.
    smartTagDemo.Actions = new Microsoft.Office.Tools.Excel.Action[] { 
        displayAddress };

    // Add the smart tag.
    this.VstoSmartTags.Add(smartTagDemo);

    displayAddress.BeforeCaptionShow += new 
        Microsoft.Office.Tools.Excel.BeforeCaptionShowEventHandler(
        DisplayAddress_BeforeCaptionShow);

    displayAddress.Click += new 
        Microsoft.Office.Tools.Excel.ActionClickEventHandler(
        DisplayAddress_Click);
}

void DisplayAddress_BeforeCaptionShow(object sender, 
    Microsoft.Office.Tools.Excel.ActionEventArgs e)
{
    Microsoft.Office.Tools.Excel.Action clickedAction =
        sender as Microsoft.Office.Tools.Excel.Action;

    if (clickedAction != null)
    {
        clickedAction.Caption = "Display the address of " +
            e.Text;
    }
}

void DisplayAddress_Click(object sender, 
    Microsoft.Office.Tools.Excel.ActionEventArgs e)
{
    string smartTagAddress = e.Range.get_Address(Excel.XlReferenceStyle.xlA1);
    System.Windows.Forms.MessageBox.Show("The recognized text '" + e.Text +
        "' is at range " + smartTagAddress);
}

Consulte também

Referência

Namespace Microsoft.Office.Tools.Excel

SmartTag