Find-Schnittstelle

Unterstützt allgemeine Find-Textvorgänge für Dokumente und Dateien in der Umgebung.

Namespace:  EnvDTE
Assembly:  EnvDTE (in EnvDTE.dll)

Syntax

'Declaration
<GuidAttribute("40D4B9B6-739B-4965-8D65-692AEC692266")> _
Public Interface Find
[GuidAttribute("40D4B9B6-739B-4965-8D65-692AEC692266")]
public interface Find
[GuidAttribute(L"40D4B9B6-739B-4965-8D65-692AEC692266")]
public interface class Find
[<GuidAttribute("40D4B9B6-739B-4965-8D65-692AEC692266")>]
type Find =  interface end
public interface Find

Der Find-Typ macht die folgenden Member verfügbar.

Eigenschaften

  Name Beschreibung
Öffentliche Eigenschaft Action Ruft die Art der Suche ab oder legt diese fest, z. B. Optionen zur Suche nach der nächsten Übereinstimmung, Alle suchen, Suchen und Ersetzen usw.
Öffentliche Eigenschaft Backwards Ruft einen Wert, der angibt, ob die Suche ausgehend von der aktuellen Position rückwärts durchgeführt wird, oder legt diesen Wert fest.
Öffentliche Eigenschaft DTE Ruft das Erweiterbarkeitsobjekt der obersten Ebene ab.
Öffentliche Eigenschaft FilesOfType Ruft die Dateierweiterung der zu durchsuchenden Dateien ab oder legt diese fest.
Öffentliche Eigenschaft FindWhat Ruft den zu suchenden Text oder das zu suchende Muster ab oder legt diesen fest.
Öffentliche Eigenschaft KeepModifiedDocumentsOpen Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob geänderte Dokumente nach einem Replace-Vorgang geöffnet bleiben.
Öffentliche Eigenschaft MatchCase Ruft einen Wert ab, der angibt, ob die Groß- und Kleinschreibung bei der Suche berücksichtigt wird, oder legt diesen Wert fest.
Öffentliche Eigenschaft MatchInHiddenText Ruft einen Wert ab, der angibt, ob ausgeblendeter Text in die Suche einbezogen wird, oder legt diesen Wert fest.
Öffentliche Eigenschaft MatchWholeWord Ruft einen Wert ab, der angibt, ob die Suche nur Übereinstimmungen für ganze Wörter findet.
Öffentliche Eigenschaft Parent Ruft das unmittelbar übergeordnete Objekt eines Find-Objekts ab.
Öffentliche Eigenschaft PatternSyntax Ruft die für die Angabe des Suchmusters verwendete Syntax ab oder legt diese fest.
Öffentliche Eigenschaft ReplaceWith Ruft den Ersetzungstext für eine Ersetzungsoperation ab oder legt diesen fest.
Öffentliche Eigenschaft ResultsLocation Ruft die Position ab, an der die Ergebnisse einer Massensuchoperation angezeigt werden, oder legt diese fest.
Öffentliche Eigenschaft SearchPath Ruft eine Liste der bei einer Suche in Dateien zu verwendenden Verzeichnisse ab oder legt diese fest.
Öffentliche Eigenschaft SearchSubfolders Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob Unterordner in einen Search-Vorgang eingeschlossen werden.
Öffentliche Eigenschaft Target Ruft das Ziel der Suchoperation ab, beispielsweise alle geöffneten Dokumente, Dateien, das aktive Dokument usw., oder legt es fest.

Zum Seitenanfang

Methoden

  Name Beschreibung
Öffentliche Methode Execute Führt eine Suche basierend auf den Optionen aus, die für das Find-Objekt festgelegt sind.
Öffentliche Methode FindReplace Führt einen Such- oder Ersetzungsvorgang anhand der Argumente der Methode durch, ohne die für Find festgelegten Optionen zu beeinflussen.

Zum Seitenanfang

Hinweise

Das Find-Objekt ermöglicht das Suchen und Ersetzen von Text in Bereichen der Umgebung, die diese Vorgänge unterstützen, beispielsweise im Code-Editor.

Es ist in erster Linie für das Aufzeichnen von Makros vorgesehen. Der Makroaufzeichnungsmechanismus des Editors verwendet Find anstelle von TextSelection.FindPattern, damit Sie die globale Suchfunktion nutzen können. Außerdem ist der Editor dem TextSelection-Objekt, beispielsweise bei der Suche in Dateien, generell vorzuziehen.

Die Visual Studio-Umgebung verfügt über einen globalen Suchzustand, der von allen Tools, die Suchfunktionen bereitstellen, gemeinsam genutzt wird. Beispielsweise nutzen alle Visual Studio-Elemente denselben Verlauf der während einer Sitzung verwendeten Suchmuster sowie die Information, ob der nächste Find-Vorgang für geöffnete Dokumente vorwärts oder rückwärts durchgeführt werden soll. Die Eigenschaften des Find-Objekts interagieren mit dem globalen Suchzustand und verfolgen diesen. Durch das Festlegen der Eigenschaften für das Find-Objekt legen Sie gleichzeitig den globalen Suchzustand fest. Wenn Benutzer einen Find-Vorgang in der Umgebung durchführen, wird die Art der durchgeführten Suche durch das Find-Objekt widergespiegelt. Da der Automatisierungscode synchron mit dem UI-Thread der Umgebung ausgeführt wird, ist es nicht erforderlich, Eigenschaften festzulegen und den Benutzer eine Suche ausführen zu lassen, bevor Execute aufgerufen werden kann.

Die Execute-Methode führt einen Find-Vorgang auf der Grundlage der Einstellungen des Find-Objekts aus. Außerdem können Sie Argumente an die FindReplace-Methode übergeben, um eine Suche ohne Auswirkungen auf den globalen Suchzustand durchzuführen. Es ist wichtig, dass Automatisierungsclients eine Suche durchführen können, ohne den globalen Suchzustand oder das Umgebungszustandsmodell des Endbenutzers zu beeinflussen.

Beispiele

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

Siehe auch

Referenz

EnvDTE-Namespace