【发布时间】:2008-12-10 13:00:12
【问题描述】:
我正在用 C# 为 VS 2008 编写插件,我想知道打开了哪种编辑器/设计器“范围”(例如 VS 编辑器/VB 编辑器“)。我可以捕捉范围更改的事件吗?
【问题讨论】:
标签: c# visual-studio-2008 add-in
我正在用 C# 为 VS 2008 编写插件,我想知道打开了哪种编辑器/设计器“范围”(例如 VS 编辑器/VB 编辑器“)。我可以捕捉范围更改的事件吗?
【问题讨论】:
标签: c# visual-studio-2008 add-in
我现在不能尝试,所以请谨慎对待:
public class Connect : IDTExtensibility2, IDTCommandTarget
{
public void OnConnection( object application, ext_ConnectMode connectMode,
object addInInst, ref Array custom )
{
_applicationObject = ( DTE2 ) application;
_applicationObject.Events.SelectionEvents.OnChange += SelectionEvents_OnChange;
}
void SelectionEvents_OnChange()
{
vsWindowType type = _applicationObject.ActiveWindow.Type;
// switch (type) { ... }
}
}
编辑:也许选择事件不是你需要的。我不知道是否还有其他可以挂钩的事件。反正这条线
vsWindowType type = _applicationObject.ActiveWindow.Type;
告诉你当前活动窗口的类型。
【讨论】: