Window2 接口
Window 对象表示环境中的一个窗口。
命名空间: EnvDTE80
程序集: EnvDTE80(在 EnvDTE80.dll 中)
语法
声明
<GuidAttribute("25731932-3283-4AE0-B7CF-F4691B8BE523")> _
Public Interface Window2 _
Inherits Window
[GuidAttribute("25731932-3283-4AE0-B7CF-F4691B8BE523")]
public interface Window2 : Window
[GuidAttribute(L"25731932-3283-4AE0-B7CF-F4691B8BE523")]
public interface class Window2 : Window
[<GuidAttribute("25731932-3283-4AE0-B7CF-F4691B8BE523")>]
type Window2 =
interface
interface Window
end
public interface Window2 extends Window
Window2 类型公开以下成员。
属性
名称 | 说明 | |
---|---|---|
AutoHides | (继承自 Window。) | |
AutoHides | 获取或设置是否可以隐藏工具窗口。 | |
Caption | (继承自 Window。) | |
Caption | 获取或设置窗口的标题。 | |
Collection | (继承自 Window。) | |
Collection | 获取包含支持此属性的 Window 对象的集合。 | |
CommandBars | 获取当前窗口中包含的 Microsoft.VisualStudio.CommandBars 的集合。 | |
ContextAttributes | (继承自 Window。) | |
ContextAttributes | 获取 ContextAttributes 集合,该集合允许自动化客户端向“动态帮助”窗口中的当前选定项添加新特性,并为其他特性提供上下文帮助。 | |
Document | (继承自 Window。) | |
Document | 获取与该项关联的 Document 对象(如果存在的话)。 | |
DocumentData[String] | (继承自 Window。) | |
DocumentData[String] | 基础结构。仅由 Microsoft 内部使用。 | |
DTE | (继承自 Window。) | |
DTE | 获取顶级扩展性对象。 | |
Height | (继承自 Window。) | |
Height | 获取或设置指示窗口尺寸的值(以像素为单位)。 | |
HWnd | (继承自 Window。) | |
HWnd | 基础结构。仅由 Microsoft 内部使用。 | |
IsFloating | (继承自 Window。) | |
IsFloating | 获取或设置一个的值,它指示工具窗口是否浮动在其他窗口上。 | |
Kind | (继承自 Window。) | |
Kind | 基础结构。仅由 Microsoft 内部使用。 | |
Left | (继承自 Window。) | |
Left | 获取或设置对象的内部左边缘与其容器左边缘之间的水平距离。 | |
Linkable | (继承自 Window。) | |
Linkable | 获取或设置指示该工具窗口是否可以与其他工具窗口靠接的值。 | |
LinkedWindowFrame | (继承自 Window。) | |
LinkedWindowFrame | 获取表示包含该窗口的窗口框架的 Window 对象。 | |
LinkedWindows | (继承自 Window。) | |
LinkedWindows | 获取包含于链接窗口框架中的所有链接窗口的集合。 | |
Object | (继承自 Window。) | |
Object | 获取在运行时可通过名称访问的对象。 | |
ObjectKind | (继承自 Window。) | |
ObjectKind | 获取 Window.Object 对象的类型,这是一个表示包含在窗口中的工具的 GUID 字符串。 | |
Project | (继承自 Window。) | |
Project | 获取与 Window 对象关联的 Project 对象。 | |
ProjectItem | (继承自 Window。) | |
ProjectItem | 获取与 Window 对象关联的 ProjectItem 对象。 | |
Selection | (继承自 Window。) | |
Selection | 获取表示 Window 对象上当前选定内容的对象。 | |
Top | (继承自 Window。) | |
Top | 获取或设置对象的内部上边缘与其容器上边缘之间的垂直距离。 | |
Type | (继承自 Window。) | |
Type | 基础结构。仅由 Microsoft 内部使用。 | |
Visible | (继承自 Window。) | |
Visible | 获取或设置窗口的可见性。 | |
Width | (继承自 Window。) | |
Width | 获取或设置窗口的宽度(以字符为单位)。 | |
WindowState | (继承自 Window。) | |
WindowState | 获取或设置窗口的状态,即该窗口是最小化、正常还是其他状态。 |
页首
方法
名称 | 说明 | |
---|---|---|
Activate() | (继承自 Window。) | |
Activate() | 将焦点移至当前项。 | |
Attach(Int32) | (继承自 Window。) | |
Attach(Int32) | 基础结构。仅由 Microsoft 内部使用。 | |
Close(vsSaveChanges) | (继承自 Window。) | |
Close(vsSaveChanges) | 关闭打开的文档并可选择保存,或关闭并销毁此窗口。 | |
Detach() | (继承自 Window。) | |
Detach() | 基础结构。仅由 Microsoft 内部使用。 | |
SetFocus() | (继承自 Window。) | |
SetFocus() | 基础结构。仅由 Microsoft 内部使用。 | |
SetKind(vsWindowType) | (继承自 Window。) | |
SetKind(vsWindowType) | 基础结构。仅由 Microsoft 内部使用。 | |
SetSelectionContainer(array<Object[]%) | (继承自 Window。) | |
SetSelectionContainer(array<Object[]%) | 当“属性”窗口活动时,允许将其中的对象设置为活动对象。 | |
SetTabPicture(Object) | (继承自 Window。) | |
SetTabPicture(Object) | 将位图加载到链接的选项卡工具窗口上的选项卡式图片中。 |
页首
示例
此示例将**“输出窗口”、“命令窗口”和“解决方案资源管理器”**链接在一起。 然后,它操作这些链接窗口的宽度和高度,最后从链接窗口框架中取消停靠它们。
有关如何作为外接程序运行此示例的更多信息,请参见如何:编译和运行自动化对象模型代码示例。
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);
}