次の方法で共有


Windows2 インターフェイス

Windows コレクションには、環境内にあるすべてのウィンドウが含まれます。

名前空間:  EnvDTE80
アセンブリ:  EnvDTE80 (EnvDTE80.dll 内)

構文

'宣言
<GuidAttribute("31EFB5B1-C655-4ADA-BB52-3ED87FB2A4AE")> _
Public Interface Windows2 _
    Inherits Windows
[GuidAttribute("31EFB5B1-C655-4ADA-BB52-3ED87FB2A4AE")]
public interface Windows2 : Windows
[GuidAttribute(L"31EFB5B1-C655-4ADA-BB52-3ED87FB2A4AE")]
public interface class Windows2 : Windows
[<GuidAttribute("31EFB5B1-C655-4ADA-BB52-3ED87FB2A4AE")>]
type Windows2 =  
    interface 
        interface Windows 
    end
public interface Windows2 extends Windows

Windows2 型で公開されるメンバーは以下のとおりです。

プロパティ

  名前 説明
パブリック プロパティ Count Windows2 コレクション内のオブジェクトの数を示す値を取得します。
パブリック プロパティ DTE トップレベルの機能拡張オブジェクトを取得します。
パブリック プロパティ Parent Windows2 コレクションの直接の親オブジェクトを取得します。

このページのトップへ

メソッド

  名前 説明
パブリック メソッド CreateLinkedWindowFrame Window オブジェクトを作成し、そのオブジェクトに 2 つのウィンドウを配置します。
パブリック メソッド CreateToolWindow 指定した Document オブジェクトまたは ActiveX コントロールを含むツール ウィンドウを新規作成します。
パブリック メソッド CreateToolWindow2 ツール ウィンドウを新規作成し、ユーザー定義の .NET コントロールをホストします。
パブリック メソッド GetEnumerator コレクション内の項目の列挙子を取得します。
パブリック メソッド Item Windows コレクションのインデックス付きメンバーを返します。

このページのトップへ

この例では、出力ウィンドウコマンド ウィンドウ、およびソリューション エクスプローラーをリンクします。 次に、リンクされたウィンドウの幅と高さを操作し、最後に、リンクされたウィンドウ フレームからすべてのウィンドウのドッキングを解除します。

このアドインの例を実行する方法の詳細については、「方法 : オートメーション オブジェクト モデルのコード例をコンパイルおよび実行する」を参照してください。

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)
    LinkedWindowsExample(_applicationObject)
End Sub
Sub LinkedWindowsExample(ByVal dte As DTE2)
    Dim Frame As Window2
    Dim wins As Windows2
    wins = CType(_applicationObject.Windows, EnvDTE80.Windows2)
    Dim w1 As Window2 = _
 CType(_applicationObject.Windows.Item _
(Constants.vsWindowKindSolutionExplorer), EnvDTE80.Window2)
    Dim w2 As Window2 = _
 CType(_applicationObject.Windows.Item _
(Constants.vsWindowKindOutput), EnvDTE80.Window2)
    Dim w3 As Window2 = _
 CType(_applicationObject.Windows.Item _
(Constants.vsWindowKindCommandWindow), EnvDTE80.Window2)
    ' Create a linked window frame and dock Solution Explorer 
    ' and the Ouput window together inside it.
    Frame = CType(wins.CreateLinkedWindowFrame _
(w1, w2, vsLinkedWindowType.vsLinkedWindowTypeDocked), _
 EnvDTE80.Window2)
    MsgBox("Total number of windows in the linked window frame: " _
 & Frame.LinkedWindows.Count)
    ' Add another tool window, the Command window, to the frame with 
    ' the other two.
    Frame.LinkedWindows.Add(w3)
    MsgBox("Total number of windows in the linked window frame: " _
    & Frame.LinkedWindows.Count)
    ' Resize the entire linked window frame.
    Frame.Width = 500
    Frame.Height = 600
    MsgBox("Frame height and width changed. Now changing _
     Command window height.")
    ' Resize the height of the Command window.
    Frame.LinkedWindows.Item(3).Height = 800
    MsgBox("Now undocking the Command window from the frame.")
    ' Undock the Command window from the frame.
    Frame.LinkedWindows.Remove(w3)
    MsgBox("Now undocking the rest of the windows from the frame.")
    Frame.LinkedWindows.Remove(w2)
    Frame.LinkedWindows.Remove(w1)
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;
    LinkedWindowsExample(_applicationObject);
}
public void LinkedWindowsExample(DTE2 dte)
{
    Window2 Frame;
    Windows2 wins;
    wins = (EnvDTE80.Windows2)_applicationObject.Windows;
    Window2 w1 = 
(EnvDTE80.Window2)_applicationObject.Windows.Item
(Constants.vsWindowKindSolutionExplorer);
Window2 w2 =
 (EnvDTE80.Window2)_applicationObject.Windows.Item
(Constants.vsWindowKindOutput);
    Window2 w3 = 
(EnvDTE80.Window2)_applicationObject.Windows.Item
(Constants.vsWindowKindCommandWindow);
    // Create a linked window frame and dock Solution Explorer
    // and the Output window together inside it.
    Frame = (EnvDTE80.Window2)wins.CreateLinkedWindowFrame
(w1, w2, vsLinkedWindowType.vsLinkedWindowTypeDocked);
    MessageBox.Show("Total number of windows in the linked 
window frame: " + Frame.LinkedWindows.Count);
    // Add another tool window, the Command window, to the frame with
    // the other two.
    Frame.LinkedWindows.Add(w3);
    MessageBox.Show("Total number of windows in the linked 
window frame: " + Frame.LinkedWindows.Count);
    // Resize the entire linked window frame.
    Frame.Width = 500;
    Frame.Height = 600;
    MessageBox.Show("Frame height and width changed.
 Now changing Command window height.");
    // Resize the height of the Command window.
    Frame.LinkedWindows.Item(3).Height = 800;
    MessageBox.Show("Now undocking the Command window from 
the frame.");
    // Undock the Command window from the frame.
    Frame.LinkedWindows.Remove(w3);
    MessageBox.Show("Now undocking the rest of the windows 
from the frame.");
    Frame.LinkedWindows.Remove(w2);
    Frame.LinkedWindows.Remove(w1);
}

参照

関連項目

EnvDTE80 名前空間

その他の技術情報

方法 : オートメーション オブジェクト モデルのコード例をコンパイルおよび実行する