Condividi tramite


Metodo ISmartTagExtension.Recognize

Cerca nel testo del documento i termini riconosciuti.

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

Sintassi

'Dichiarazione
Sub Recognize ( _
    text As String, _
    site As ISmartTagRecognizerSite, _
    tokenList As ISmartTagTokenList, _
    context As SmartTagRecognizeContext _
)
void Recognize(
    string text,
    ISmartTagRecognizerSite site,
    ISmartTagTokenList tokenList,
    SmartTagRecognizeContext context
)

Parametri

  • text
    Tipo: System.String
    Testo in cui cercare termini riconosciuti.
  • site
    Tipo: Microsoft.Office.Interop.SmartTag.ISmartTagRecognizerSite
    Posizione del testo nella cartella di lavoro o nel documento.
  • tokenList
    Tipo: Microsoft.Office.Interop.SmartTag.ISmartTagTokenList
    Testo in cui cercare termini riconosciuti, frammentato in un elenco di token.

Note

Questo metodo è chiamato da Runtime di Visual Studio Tools per Office per cercare termini riconosciuti nel testo. Implementare questo metodo se si desidera incorporare algoritmi di ricerca personali da eseguire in aggiunta ai sistemi di riconoscimento standard.

Esempi

Nell'esempio di codice riportato di seguito viene illustrato come implementare il metodo Recognize. Questa implementazione confronta ogni termine smart tag al contenuto del paragrafo. Per ogni termine smart tag presente nel paragrafo 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

    For Each term As String In smartTagDemo.Terms
        ' Search the text for the current smart tag term.
        Dim index As Integer = text.IndexOf(term, 0)

        While (index >= 0)
            ' 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.ToString())

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

            ' Increment the index and then find the next instance of the smart tag term.
            index += term.Length
            index = text.IndexOf(term, index)
        End While
    Next
End Sub
void ISmartTagExtension.Recognize(string text, ISmartTagRecognizerSite site, ISmartTagTokenList tokenList, 
    SmartTagRecognizeContext context)
{

    foreach (string term in smartTagDemo.Terms)
    {
        // Search the text for the current smart tag term.
        int index = text.IndexOf(term, 0);

        while (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(index, term.Length, propertyBag);

            // Increment the index and then find the next instance of the smart tag term.
            index += term.Length;
            index = text.IndexOf(term, index);
        }
    }
}

Sicurezza di .NET Framework

Vedere anche

Riferimenti

ISmartTagExtension Interfaccia

Spazio dei nomi Microsoft.Office.Tools.Word