Condividi tramite


Interfaccia Find2

Supporta operazioni Find di testo generiche di documenti e file nell'ambiente.

Spazio dei nomi:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.dll)

Sintassi

'Dichiarazione
<GuidAttribute("01568308-5B2A-4F30-8D0A-E10EE0F28F4A")> _
Public Interface Find2 _
    Inherits Find
[GuidAttribute("01568308-5B2A-4F30-8D0A-E10EE0F28F4A")]
public interface Find2 : Find
[GuidAttribute(L"01568308-5B2A-4F30-8D0A-E10EE0F28F4A")]
public interface class Find2 : Find
[<GuidAttribute("01568308-5B2A-4F30-8D0A-E10EE0F28F4A")>]
type Find2 =  
    interface 
        interface Find 
    end
public interface Find2 extends Find

Il tipo Find2 espone i seguenti membri.

Proprietà

  Nome Descrizione
Proprietà pubblica Action Ottiene o imposta la modalità di ricerca, ad esempio Trova successivo, Trova tutto, Sostituisci e così via.
Proprietà pubblica Backwards Ottiene o imposta un valore che indica se la ricerca viene eseguita all'indietro a partire dalla posizione corrente.
Proprietà pubblica DTE Ottiene l'oggetto estensibilità di primo livello.
Proprietà pubblica FilesOfType Ottiene o imposta l'estensione dei file nei quali eseguire la ricerca.
Proprietà pubblica FindWhat Ottiene o imposta il testo o il criterio da cercare.
Proprietà pubblica KeepModifiedDocumentsOpen Ottiene o imposta un valore che indica se i documenti modificati devono rimanere aperti dopo un'operazione di sostituzione.
Proprietà pubblica MatchCase Ottiene o imposta un valore che indica se per la ricerca viene applicata la distinzione tra maiuscole e minuscole.
Proprietà pubblica MatchInHiddenText Ottiene o imposta un valore che indica se il testo nascosto viene incluso nella ricerca.
Proprietà pubblica MatchWholeWord Ottiene o imposta un valore che indica se per la ricerca vengono considerate solo le parole intere.
Proprietà pubblica Parent Ottiene l'oggetto padre immediato di un oggetto Find.
Proprietà pubblica PatternSyntax Ottiene o imposta la sintassi utilizzata per specificare il criterio di ricerca.
Proprietà pubblica ReplaceWith Ottiene o imposta il testo di sostituzione in un'operazione di sostituzione.
Proprietà pubblica ResultsLocation Ottiene o imposta la posizione in cui vengono visualizzati i risultati di un'operazione di ricerca di massa.
Proprietà pubblica SearchPath Ottiene o imposta un elenco di directory da utilizzare in un'operazione di ricerca nei file.
Proprietà pubblica SearchSubfolders Ottiene o imposta un valore che indica se le sottocartelle vengono incluse o meno in un'operazione di ricerca.
Proprietà pubblica Target Ottiene o imposta la destinazione dell'operazione di ricerca, ad esempio tutti i documenti aperti, i file, il documento attivo e così via.
Proprietà pubblica WaitForFindToComplete Ottiene o imposta un valore che indica se viene restituito un risultato prima di continuare l'esecuzione.

In alto

Metodi

  Nome Descrizione
Metodo pubblico Execute Esegue una ricerca in base alle opzioni impostate per l'oggetto Find.
Metodo pubblico FindReplace Esegue un'operazione di ricerca o sostituzione in base agli argomenti del metodo, senza modificare le opzioni impostate per l'oggetto Find.

In alto

Note

L'oggetto Find consente di cercare e sostituire testo presente in parti dell'ambiente che supportano operazioni di questo tipo, ad esempio l'editor di codice.

Viene utilizzato principalmente nella registrazione di macro. Il meccanismo di registrazione delle macro dell'editor utilizza Find anziché TextSelection.FindPattern per consentire l'utilizzo della funzionalità di ricerca globale. Inoltre, si rivela in genere più utile rispetto all'utilizzo dell'oggetto TextSelection per operazioni quali la ricerca nei file.

Lo stato di ricerca globale dell'ambiente di Visual Studio è condiviso da tutti gli strumenti e fornisce funzionalità di ricerca. Ad esempio, tutti gli elementi di Visual Studio condividono la cronologia dei criteri di ricerca utilizzati nel corso di una sessione e le informazioni relative alla direzione di ricerca dell'operazione Find successiva di documenti aperti. Le proprietà dell'oggetto Find interagiscono e tengono traccia dello stato di ricerca globale. Quando si impostano le proprietà sull'oggetto Find, si imposta anche lo stato di ricerca globale. Se gli utenti eseguono un'operazione Find nell'ambiente, l'oggetto Find rifletterà il tipo di ricerca eseguito. Poiché il codice di automazione viene eseguito in modo sincrono con il thread dell'interfaccia utente dell'ambiente, non è necessario impostare proprietà e chiedere all'utente di eseguire una ricerca prima di chiamare il metodo Execute.

Il metodo Execute esegue un'operazione Find in base alle impostazioni dell'oggetto Find. È anche possibile passare argomenti al metodo FindReplace per eseguire una ricerca senza influire sullo stato di ricerca globale. È importante che i client di automazione siano in grado di effettuare ricerche senza modificare lo stato globale e senza interferire con il modello dello stato dell'ambiente dell'utente finale.

Esempi

Sub FindExample()
   Dim objTextDoc As TextDocument
   Dim objEditPt As EditPoint
   Dim iCtr As Integer
   Dim objFind As Find

   ' Create a new text file.
   DTE.ItemOperations.NewFile("General\Text File")

   ' Get a handle to the new document and create an EditPoint.
   objTextDoc = DTE.ActiveDocument.Object("TextDocument")
   objEditPt = objTextDoc.StartPoint.CreateEditPoint
   objFind = objTextDoc.DTE.Find

   ' Insert ten lines of text.
   For iCtr = 1 To 10
      objEditPt.Insert("This is a test." & Chr(13))
   Next iCtr

   ' Set the find options.
   objFind.Action = vsFindAction.vsFindActionReplaceAll
   objFind.Backwards = False
   objFind.FilesOfType = "*.txt"
   objFind.FindWhat = "test"
   objFind.KeepModifiedDocumentsOpen = True
   objFind.MatchCase = False
   objFind.MatchInHiddenText = False
   objFind.MatchWholeWord = True
   objFind.PatternSyntax = vsFindPatternSyntax.vsFindPatternSyntaxLiteral
   objFind.ReplaceWith = "NEW THING"
   objFind.ResultsLocation = vsFindResultsLocation.vsFindResultsNone
   objFind.SearchPath = "c:\temp"
   objFind.SearchSubfolders = False
   objFind.Target = vsFindTarget.vsFindTargetCurrentDocument
   ' Perform the Find operation.
   objFind.Execute()
End Sub

Vedere anche

Riferimenti

Spazio dei nomi EnvDTE80