Partager via


SmartTag, interface

Représente une balise active d'un document Word personnalisé à l'aide des outils de développement Office dans Visual Studio.

Espace de noms :  Microsoft.Office.Tools.Word
Assembly :  Microsoft.Office.Tools.Word (dans Microsoft.Office.Tools.Word.dll)

Syntaxe

'Déclaration
<GuidAttribute("2b90a8e2-4e6c-4c27-bd35-a6ba7b344223")> _
Public Interface SmartTag _
    Inherits SmartTagBase
[GuidAttribute("2b90a8e2-4e6c-4c27-bd35-a6ba7b344223")]
public interface SmartTag : SmartTagBase

Le type SmartTag expose les membres suivants.

Propriétés

  Nom Description
Propriété publique Actions Obtient ou définit un tableau d'actions qui sont exposées par la balise active. Ce type ou ce membre vise à être utilisé uniquement dans les projets pour la version 2007 de Microsoft Office System. Les balises actives sont déconseillées dans Office 2010.
. (Hérité de SmartTagBase.)
Propriété publique Caption Obtient le nom de la balise active. Ce type ou ce membre vise à être utilisé uniquement dans les projets pour la version 2007 de Microsoft Office System. Les balises actives sont déconseillées dans Office 2010.
. (Hérité de SmartTagBase.)
Propriété publique DefaultExtension Obtient l'extension par défaut de cet objet SmartTag. Ce type ou ce membre vise à être utilisé uniquement dans les projets pour la version 2007 de Microsoft Office System. Les balises actives sont déconseillées dans Office 2010.
.
Propriété publique Expressions Obtient la collection des expressions régulières que la balise active reconnaîtra. Ce type ou ce membre vise à être utilisé uniquement dans les projets pour la version 2007 de Microsoft Office System. Les balises actives sont déconseillées dans Office 2010.
. (Hérité de SmartTagBase.)
Propriété publique Extension Obtient une extension personnalisée pour cet objet SmartTag.
Propriété publique SmartTagType Obtient un espace de noms qui joue le rôle d'identificateur unique pour la balise active. Ce type ou ce membre vise à être utilisé uniquement dans les projets pour la version 2007 de Microsoft Office System. Les balises actives sont déconseillées dans Office 2010.
. (Hérité de SmartTagBase.)
Propriété publique Terms Obtient la collection des littéraux de chaîne que la balise active reconnaîtra. Ce type ou ce membre vise à être utilisé uniquement dans les projets pour la version 2007 de Microsoft Office System. Les balises actives sont déconseillées dans Office 2010.
. (Hérité de SmartTagBase.)

Début

Méthodes

  Nom Description
Méthode publique Remove Supprime un module de reconnaissance des expressions régulières de la balise active. Ce type ou ce membre vise à être utilisé uniquement dans les projets pour la version 2007 de Microsoft Office System. Les balises actives sont déconseillées dans Office 2010.
. (Hérité de SmartTagBase.)

Début

Notes

Pour créer une balise active, utilisez la méthode Globals.Factory.CreateSmartTag pour créer un objet SmartTag.

Notes

Cette interface est implémentée par Visual Studio Tools pour Office Runtime. Elle n'est pas destinée à être implémentée dans votre code. Pour plus d'informations, consultez Vue d'ensemble de Visual Studio Tools pour Office Runtime.

Utilisation

Ce type vise à être utilisé uniquement dans les projets pour Word 2007. Les balises actives sont déconseillées dans Word 2010.

Exemples

L'exemple de code suivant montre comment créer une balise active. L'action de la balise active modifie la légende de menu de l'action au moment de l'exécution et affiche l'emplacement du texte qui a été reconnu.

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());
}

Voir aussi

Référence

Microsoft.Office.Tools.Word, espace de noms