Metodo SmartTagRecognizeContext.PersistTag

Archivia le informazioni relative allo smart tag.

Spazio dei nomi:  Microsoft.Office.Tools.Excel
Assembly:  Microsoft.Office.Tools.Excel (in Microsoft.Office.Tools.Excel.dll)

Sintassi

'Dichiarazione
Sub PersistTag ( _
    propertyBag As ISmartTagProperties _
)
void PersistTag(
    ISmartTagProperties propertyBag
)

Parametri

  • propertyBag
    Tipo: Microsoft.Office.Interop.SmartTag.ISmartTagProperties
    Elenco proprietà contenente le coppie chiave/valore per il token.Può essere nullriferimento null (Nothing in Visual Basic).

Eccezioni

Eccezione Condizione
InvalidOperationException

PersistTag non è stato chiamato dal metodo Recognize.

Note

Chiamare PersistTag da un'implementazione del metodo Recognize per indicare che lo smart tag è stato trovato nel testo. Utilizzare il parametro propertyBag per eseguire il commit di eventuali proprietà personalizzate per lo smart tag. È possibile utilizzare queste proprietà per personalizzare l'azione intrapresa quando viene selezionata una voce del menu di scelta rapida Smart tag.

Esempi

Nell'esempio di codice seguente viene illustrato come chiamare PersistTag da un'implementazione del metodo Recognize. Questa implementazione confronta ogni termine smart tag al contenuto della cella. Per ogni termine smart tag presente nella cella viene aggiunta una proprietà smart tag personalizzata e viene utilizzato il metodo PersistTag per riconoscere lo smart tag. Nell'esempio si presuppone che sia stato aggiunto un riferimento a Microsoft.Office.Interop.SmartTag dalla scheda .NET della finestra di dialogo Aggiungi riferimento. Questo esempio di codice fa parte di un esempio più esaustivo fornito per l'interfaccia ISmartTagExtension.

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

Sicurezza di .NET Framework

Vedere anche

Riferimenti

SmartTagRecognizeContext Interfaccia

Spazio dei nomi Microsoft.Office.Tools.Excel