Share via


TextSelection.Paste Method

Inserts the clipboard contents at the current location.

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

Syntax

'Declaration
Sub Paste
void Paste()
void Paste()
abstract Paste : unit -> unit 
function Paste()

Remarks

Paste moves the edit point past the insertion.

Examples

Sub PasteExample(ByVal dte As DTE2)

    ' Create a new text file and insert ten lines of text.
    dte.ItemOperations.NewFile()
    Dim textDoc As TextDocument = _
        CType(dte.ActiveDocument.Object(), TextDocument)
    Dim editPnt As EditPoint = textDoc.StartPoint.CreateEditPoint()
    Dim i As Integer
    For i = 1 To 10
        editPnt.Insert("Line " & i.ToString() & vbCrLf)
    Next

    If MsgBox("Reverse the order of the lines?", MsgBoxStyle.YesNo) = _
        MsgBoxResult.Yes Then
        Dim textSel As TextSelection = textDoc.Selection

        ' Position insertion point at beginning of "Line 2".
        textSel.StartOfDocument()
        textSel.LineDown()

        ' Reverse the order of the lines by cutting "Line 2" and
        ' pasting it at the start of the document, and then cutting
        ' "Line 3" and pasting it at the start of the document,
        ' and so on.
        For i = 1 To 9
            textSel.LineDown(True)
            textSel.Cut()
            editPnt.StartOfDocument()
            editPnt.Paste()
        Next
    End If

End Sub
public void PasteExample(DTE2 dte)
{
    // Create a new text file and insert ten lines of text.
    dte.ItemOperations.NewFile(@"General\Text File", "", 
        Constants.vsViewKindPrimary);
    TextDocument textDoc = 
        (TextDocument)dte.ActiveDocument.Object("TextDocument");
    EditPoint editPnt = textDoc.StartPoint.CreateEditPoint();
    
    for (int i = 1; i <= 10; i++)
        editPnt.Insert("Line " + i.ToString() + "\n");

    if (MessageBox.Show("Reverse the order of the lines?", "", 
        MessageBoxButtons.YesNo) == DialogResult.Yes)
    {
        TextSelection textSel = textDoc.Selection;

        // Position insertion point at beginning of "Line 2".
        textSel.StartOfDocument(false);
        textSel.LineDown(false, 1);

        // Reverse the order of the lines by cutting "Line 2" and
        // pasting it at the start of the document, and then cutting
        // "Line 3" and pasting it at the start of the document,
        // and so on.
        for (int i = 1; i <= 9; i++)
        {
            textSel.LineDown(true, 1);
            textSel.Cut();
            editPnt.StartOfDocument();
            editPnt.Paste();
        }
    }
}

.NET Framework Security

See Also

Reference

TextSelection Interface

EnvDTE Namespace

Other Resources

How to: Compile and Run the Automation Object Model Code Examples