Compartilhar via


Método SmartTagRecognizeContext.PersistTag

Armazena informações sobre a marca inteligente.

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

Sintaxe

'Declaração
Sub PersistTag ( _
    propertyBag As ISmartTagProperties _
)
void PersistTag(
    ISmartTagProperties propertyBag
)

Parâmetros

  • propertyBag
    Tipo: Microsoft.Office.Interop.SmartTag.ISmartTagProperties
    Um conjunto de propriedades que contém pares de chave e valor para o token.Can be nulluma referência nula (Nothing no Visual Basic).

Exceções

Exceção Condição
InvalidOperationException

PersistTagnão foi chamado a partir de Recognize método.

Comentários

Chame PersistTag a partir de uma implementação da Recognize método para indicar que a marca inteligente foi encontrada no texto. Use o propertyBag parâmetro para confirmar quaisquer propriedades personalizadas para smart tag. Você pode usar essas propriedades para personalizar a ação executada quando um item de menu de atalho de marca inteligente está selecionado.

Exemplos

O exemplo de código a seguir demonstra como chamar PersistTag a partir de uma implementação de Recognize método. Essa implementação compara cada termo de marca inteligente para o conteúdo da célula. A cada termo de marca inteligente na célula, o código adiciona uma propriedade de marca inteligente personalizada e, em seguida, usa o PersistTag método para reconhecer o smart tag. Este exemplo assume que você adicionou uma referência a Microsoft.Office.Interop.SmartTag partir do .NET guia de Add Reference caixa de diálogo. Este exemplo de código é parte de um exemplo maior fornecido para a ISmartTagExtension interface.

Private Sub Recognize(ByVal text As String, 
    ByVal site As ISmartTagRecognizerSite, ByVal tokenList As ISmartTagTokenList, 
    ByVal context As SmartTagRecognizeContext) Implements ISmartTagExtension.Recognize

    ' Determine whether each smart tag term exists in the document text.
    Dim Term As String
    For Each Term In smartTagDemo.Terms

        ' Search the cell text for the first instance of 
        ' the current smart tag term.
        Dim index As Integer = context.CellText.IndexOf(Term, 0)

        If (index >= 0) Then

            ' Create a smart tag token and a property bag for the 
            ' recognized term.
            Dim propertyBag As ISmartTagProperties = site.GetNewPropertyBag()

            ' Write a new property value.
            Dim key As String = "Key1"
            propertyBag.Write(key, DateTime.Now)

            ' Attach the smart tag to the term in the document.
            context.PersistTag(propertyBag)

            ' This implementation only finds the first instance
            ' of a smart tag term in the cell. 
            Exit For
        End If
    Next
End Sub
void ISmartTagExtension.Recognize(string text, ISmartTagRecognizerSite site, 
    ISmartTagTokenList tokenList, SmartTagRecognizeContext context)
{

    // Determine whether each smart tag term exists in the document text.
    foreach (string term in smartTagDemo.Terms)
    {
        // Search the cell text for the first instance of the current smart tag term.
        int index = context.CellText.IndexOf(term, 0);

        if (index >= 0)
        {
            // Create a smart tag token and a property bag for the recognized term.
            ISmartTagProperties propertyBag = site.GetNewPropertyBag();

            // Write a new property value.                 
            string key = "Key1";
            propertyBag.Write(key, DateTime.Now.ToString());

            // Attach the smart tag to the term in the document
            context.PersistTag(propertyBag);

            // This implementation only finds the first instance of a 
            // smart tag term in the cell. 
            break;
        }
    }
}

Segurança do .NET Framework

Consulte também

Referência

SmartTagRecognizeContext Interface

Namespace Microsoft.Office.Tools.Excel