TextSelection.Paste Method

Inserts the clipboard contents at the current location.

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

Syntax

'Declaration
Sub Paste
'Usage
Dim instance As TextSelection

instance.Paste()
void Paste()
void Paste()
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

TextSelection Members

EnvDTE Namespace

Other Resources

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