This documentation is archived and is not being maintained.

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 : TextPane
/** @attribute GuidAttribute("ACE19C7B-A0AC-4089-94FD-749CF4380E1F") */ 
public interface TextPane2 extends TextPane
GuidAttribute("ACE19C7B-A0AC-4089-94FD-749CF4380E1F") 
public interface TextPane2 extends TextPane

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.

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;
    TextPane2Example(_applicationObject);
}
public void TextPane2Example(DTE2 dte)
{
    TextWindow objTW;
    TextPane2objPane;
    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
("TextDocument");
    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 + ".");
}
Show: