You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何访问自定义Tool Window?

如何访问自定义Tool Window?

看起来你已经搞定了自定义Tool Window的基础创建和注册,我来给你唠唠几种常见的访问方式,都是实际开发里常用的套路:

  • 通过自定义菜单命令触发(最常用)
    你得给这个Tool Window绑定一个菜单命令,点击命令就弹出窗口。比如在你的Package类里加个命令处理方法:

    private void ShowMyToolWindow(object sender, EventArgs e)
    {
        // 查找或创建Tool Window实例
        ToolWindowPane toolWindow = this.FindToolWindow(typeof(My_Tool_Window_1), 0, true);
        if (toolWindow == null || toolWindow.Frame == null)
        {
            throw new NotSupportedException("没法创建这个Tool Window哦");
        }
        // 显示窗口
        IVsWindowFrame windowFrame = (IVsWindowFrame)toolWindow.Frame;
        Microsoft.VisualStudio.ErrorHandler.ThrowOnFailure(windowFrame.Show());
    }
    

    之后要在.vsct配置文件里把这个命令加到菜单里(比如视图菜单下),这样用户就能通过点击菜单按钮打开它了。

  • 从Visual Studio的“视图”菜单里找
    要是你在注册Tool Window的时候,配置了正确的窗口类别和菜单位置,它会自动出现在「视图」->「其他窗口」的列表里,直接点击就能打开,不用额外写命令逻辑。

  • 启动包时自动显示(测试用)
    要是你想在调试的时候一启动就看到窗口,可以在Package的Initialize方法里直接调用上面的ShowMyToolWindow方法,这样包加载完成后窗口就自动弹出来了,方便调试。

对了,你代码里的My_Tool_Window_1类已经有了专属的Guid,这个很重要,Visual Studio就是靠这个Guid来识别和管理不同的Tool Window的,可别随便改哦。

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.08 13:29:39