다음을 통해 공유


TextSelection.MoveToPoint(TextPoint, Boolean) Method

Definition

Moves the active point to the given position.

void MoveToPoint(EnvDTE::TextPoint const & Point, bool Extend = false);
[System.Runtime.InteropServices.DispId(38)]
public void MoveToPoint (EnvDTE.TextPoint Point, bool Extend = false);
[<System.Runtime.InteropServices.DispId(38)>]
abstract member MoveToPoint : EnvDTE.TextPoint * bool -> unit
Public Sub MoveToPoint (Point As TextPoint, Optional Extend As Boolean = false)

Parameters

Point
TextPoint

Required. The location in which to move the character.

Extend
Boolean

Optional. Default = false. Determines whether to extend the current selection. If Extend is true, then the active end of the selection moves to the location, while the anchor end remains where it is. Otherwise, both ends are moved to the specified location. This argument applies only to the TextSelection object.

Attributes

Examples

Sub MoveToPointExample()  
    ' Before running this example, open a text document.  
    Dim objSel As TextSelection = DTE.ActiveDocument.Selection  
    If objSel.IsEmpty Then  
        ' If there is no text selected, swap the words before and after   
        ' the insertion point. We begin by selecting the word before   
        ' the insertion point.  
        objSel.WordLeft(True)  
        If Not objSel.IsEmpty Then  
            ' We can continue only if the selection was not already at   
            ' the beginning of the document.  
            Dim strBefore As String = objSel.Text  

            ' The text is saved in strBefore; now delete it and move   
            ' past the following word.  
            objSel.Delete()  
            objSel.WordRight(True)  
            If objSel.Text.StartsWith(" ") Or objSel.Text.StartsWith(Microsoft.VisualBasic.ControlChars.Tab) Then  
                ' The previous call to WordRight may have skipped some   
                ' white space instead of an actual word. In that case,   
                ' we should call it again.  
                objSel.WordRight(True)  
            End If  

            ' Insert the new text at the end of the selection.  
            objSel.Insert(strBefore, vsInsertFlags.vsInsertFlagsInsertAtEnd)  
        End If  
    Else  
        ' If some text is selected, replace the following word with the   
        ' text selection.  
        Dim strSelected As String = objSel.Text  

        objSel.MoveToPoint(objSel.BottomPoint)  
        objSel.WordRight(True)  
        If objSel.Text.StartsWith(" ") Or objSel.Text.StartsWith(Microsoft.VisualBasic.ControlChars.Tab) Then  
            ' The previous call to WordRight may have skipped some   
            ' white space instead of an actual word. In that case, we   
            ' should call it again.  
            objSel.WordRight(True)  
        End If  

        ' Insert the text, overwriting the existing text and leaving   
        ' the selection containing the inserted text.  
        objSel.Insert(strSelected, vsInsertFlags.vsInsertFlagsContainNewText)  
    End If  
End Sub  

Applies to