Find Interface
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Supports general text Find operations in the environment for documents and files.
public interface class Find
public interface class Find
__interface Find
[System.Runtime.InteropServices.Guid("40D4B9B6-739B-4965-8D65-692AEC692266")]
[System.Runtime.InteropServices.TypeLibType(4160)]
public interface Find
[System.Runtime.InteropServices.Guid("40D4B9B6-739B-4965-8D65-692AEC692266")]
public interface Find
[<System.Runtime.InteropServices.Guid("40D4B9B6-739B-4965-8D65-692AEC692266")>]
[<System.Runtime.InteropServices.TypeLibType(4160)>]
type Find = interface
[<System.Runtime.InteropServices.Guid("40D4B9B6-739B-4965-8D65-692AEC692266")>]
type Find = interface
Public Interface Find
- Derived
- Attributes
Examples
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
Remarks
The Find object allows you to search for and replace text in places of the environment that support such operations, such as the Code editor.
It is intended primarily for macro recording purposes. The editor's macro recording mechanism uses Find rather than TextSelection.FindPattern
so that you can discover the global find functionality, and because it generally is more useful than using the TextSelection object for such operations as Find-in-files.
The Visual Studio environment has a global find state that is shared across all its tools that provides search capabilities. For example, all Visual Studio elements share the history of search patterns used during a session and whether the next Find
operation for open documents should be forwards or backwards. The Find object's properties interact with and track the global find state. When you set properties on the Find object, you also set the global find state. If users perform a Find
operation through the environment, the Find object reflects the kind of search they performed. Because automation code runs synchronously with the environment's UI thread, you do not need to set some of the properties and have the user perform a search before you can call the Execute.
The Execute method performs a Find
operation based on the settings of the Find object. You can also pass arguments to the FindReplace method to perform a search without affecting the global find state. It is important for automation clients to be able to perform a search without affecting the global find state or interfering with the end user's model of the environment's state.
Properties
Action |
Gets or sets how to find, such as find next match, find all, replace and find, and so forth. |
Backwards |
Gets or sets a value indicating whether the search is performed backwards from the current position. |
DTE |
Gets the top-level extensibility object. |
FilesOfType |
Gets or sets the file extension for the files to be searched. |
FindWhat |
Gets or sets the text or pattern to find. |
KeepModifiedDocumentsOpen |
Gets or sets a value indicating whether or not modified documents remain open after a |
MatchCase |
Gets or sets a value indicating whether the search is case-sensitive. |
MatchInHiddenText |
Gets or sets a value indicating whether hidden text is included in the search. |
MatchWholeWord |
Gets or sets a value indicating whether the search matches whole words only. |
Parent |
Gets the immediate parent object of a Find object. |
PatternSyntax |
Gets or sets the syntax used to specify the search pattern. |
ReplaceWith |
Gets or sets the replacement text for a replacement operation. |
ResultsLocation |
Gets or sets the location where the results are shown in a bulk search operation. |
SearchPath |
Gets or sets a list of directories to use for a find-in-files operation. |
SearchSubfolders |
Gets or sets a value indicating whether subfolders are included in a |
Target |
Gets or sets the target of the search operation, such as all open docs, files, the active document, and so forth. |
Methods
Execute() |
Performs a search based on the options set for the Find object. |
FindReplace(vsFindAction, String, Int32, String, vsFindTarget, String, String, vsFindResultsLocation) |
Performs a Find or Replacement operation based on the arguments to the method, without affecting the options set for the Find. |