Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Aktualisiert: November 2007
Unterstützt allgemeine Find-Textvorgänge für Dokumente und Dateien in der Umgebung.
Namespace: EnvDTE
Assembly: EnvDTE (in EnvDTE.dll)
Syntax
<GuidAttribute("40D4B9B6-739B-4965-8D65-692AEC692266")> _
Public Interface Find
Dim instance As Find
[GuidAttribute("40D4B9B6-739B-4965-8D65-692AEC692266")]
public interface Find
[GuidAttribute(L"40D4B9B6-739B-4965-8D65-692AEC692266")]
public interface class Find
public interface Find
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 nach. 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