TextPane2 Interface

Represents a pane within a text editor window.

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


<GuidAttribute("ACE19C7B-A0AC-4089-94FD-749CF4380E1F")> _
Public Interface TextPane2 _
    Inherits TextPane
public interface TextPane2 : TextPane
public interface class TextPane2 : TextPane
type TextPane2 =  
        interface TextPane
public interface TextPane2 extends TextPane

The TextPane2 type exposes the following members.


  Name Description
Public property Collection Gets the collection containing the TextPane object supporting this property.
Public property DTE Gets the top-level extensibility object.
Public property Height Gets the height of the text pane in character units.
Public property IncrementalSearch Provides access to the incremental search (ISearch) capability of the text editor.
Public property Selection Gets an object representing the current selection on the TextPane object.
Public property StartPoint Gets the TextPoint object representing the first displayed character of the pane.
Public property Width Gets the width of the pane in character units.
Public property Window Gets the Window object that contains the pane.



  Name Description
Public method Activate Moves the focus to the current item.
Public method IsVisible Returns a value indicating whether the character or specified characters are visible in the text pane.
Public method TryToShow Adjusts the location of the view in the text buffer so that the indicated range of text is shown in the text pane, if possible. You can control where the text displays in the pane.



You can split a text editor window into two panes. The TextPane object gives you access to the text selected in each pane, as well as the pane's properties such as height, width, and so on.


This example opens a text document and displays some of the text pane properties in a message box. For more information about how to run this example as an add-in, see How to: Compile and Run the Automation Object Model Code Examples.

Imports EnvDTE
Imports EnvDTE80
Public Sub OnConnection(ByVal application As Object, _
 ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
 ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    _applicationObject = CType(application, DTE2)
    _addInInstance = CType(addInInst, AddIn)
End Sub
Sub TextPane2Example(ByVal dte As DTE2)
    Dim objTW As TextWindow
    Dim objPane As TextPane2
    Dim objStart As TextPoint
    Dim objTextDoc As TextDocument
    Dim objTextPt As TextPoint
    Dim objEP As EditPoint
    ' Create a new text document.
    _applicationObject.ItemOperations.NewFile("General\Text File")
    ' Get a handle to the new document and create EditPoint,
    ' TextPoint, and TextPane2 objects.
    objTextDoc = CType(_applicationObject.ActiveDocument.Object _
    ("TextDocument"), TextDocument)
    objEP = objTextDoc.StartPoint.CreateEditPoint
    objTextPt = objTextDoc.StartPoint
    ' Plug in some text.
    objEP.Insert("A test sentence.")
    objTW = CType(dte.ActiveWindow.Object, TextWindow)
    objPane = CType(objTW.ActivePane, TextPane2)
    MsgBox("The active pane is " & Str(objPane.Height)  _
    & " lines high and " & Str(objPane.Width) & " columns wide.")
    objStart = objPane.StartPoint
    MsgBox("It begins at line " & Str(objStart.Line) & ", column " & _
     Str(objStart.LineCharOffset) & ".")
End Sub
using EnvDTE;
using EnvDTE80;
using System.Windows.Forms;
public void OnConnection(object application, 
ext_ConnectMode connectMode, object addInInst, ref Array custom)
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
public void TextPane2Example(DTE2 dte)
    TextWindow objTW;
    TextPane2 objPane;
    TextPoint objStart;
    TextDocument objTextDoc;
    TextPoint objTextPt;
    EditPoint2 objEP;
    // Create a new text document.
    _applicationObject.ItemOperations.NewFile(@"General\Text File",
 "test.txt", Constants.vsViewKindTextView);
    // Get a handle to the text document and create EditPoint2,
    // TextPoint, and TextPane2 objects.
    objTextDoc =(TextDocument)_applicationObject.ActiveDocument.Object
    objEP = (EditPoint2)objTextDoc.StartPoint.CreateEditPoint();
    objTextPt = objTextDoc.StartPoint;
    // Plug in some text.
    objEP.Insert("A test sentence.");
    objTW = (TextWindow)_applicationObject.ActiveWindow.Object;
    objPane = (TextPane2)objTW.ActivePane;
    MessageBox.Show("The active pane is " + objPane.Height + " 
lines high and " + objPane.Width + " columns wide.");
    objStart = objPane.StartPoint;
    MessageBox.Show("It begins at line " + objStart.Line 
+ ", column " +  objStart.LineCharOffset + ".");

See Also


EnvDTE80 Namespace