【问题标题】:How to disable / use Visual Studio's title bar如何禁用/使用 Visual Studio 的标题栏
【发布时间】:2011-03-30 15:59:07
【问题描述】:

我想利用 Visual Studio 2010 的标题栏浪费的空间。

是否可以将工具栏或标签栏放在标题栏中,如谷歌浏览器?

可以写扩展吗?

谢谢

【问题讨论】:

    标签: visual-studio-2010


    【解决方案1】:

    Visual Studio 有一个全屏模式:查看 -> 全屏模式(或 Shift + Alt + Enter,默认情况下)。

    【讨论】:

    • 如果我启用全屏模式,我会松开工具栏和 Windows 开始菜单任务栏。
    【解决方案2】:

    这似乎是不可能的,即使使用 Visual Studio 2012 和 Visual Studio 2013。

    【讨论】:

      【解决方案3】:

      这似乎是可能的,至少在 VS2013 中(但可能也适用于 VisualCommander 扩展支持的其他版本)。这是所需的宏,也许有人会发现它有用:

      1. 在 Visual Studio 2013 中隐藏标题栏。
      public class E : VisualCommanderExt.IExtension
      {
          public void SetSite(EnvDTE80.DTE2 DTE, Microsoft.VisualStudio.Shell.Package package)
          {
              events = DTE.Events;
              dteEvents = events.DTEEvents;
              dteEvents.OnStartupComplete += OnStartupComplete;
          }
          public void Close()
          {
              dteEvents.OnStartupComplete -= OnStartupComplete;
          }
          private void OnStartupComplete()
          {
              try
              {
                  HideTitleBar();
              }
              catch
              {
              }
          }
          private bool HideTitleBar()
          {
              System.Windows.FrameworkElement e = 
                  FindElement(System.Windows.Application.Current.MainWindow, 
                      "MainWindowTitleBar");
              if (e != null)
              {
                  e.Visibility = System.Windows.Visibility.Collapsed;
                  return true;
              }
              return false;
          }
          private System.Windows.FrameworkElement FindElement(System.Windows.Media.Visual v, string name)
          {
              if (v == null)
                  return null;
              for (int i = 0; i < System.Windows.Media.VisualTreeHelper.GetChildrenCount(v); ++i)
              {
                  System.Windows.Media.Visual child = 
                      System.Windows.Media.VisualTreeHelper.GetChild(v, i) as
                          System.Windows.Media.Visual;
                  if (child != null)
                  {
                      System.Windows.FrameworkElement e = 
                          child as System.Windows.FrameworkElement;
                      if (e != null && e.Name == name)
                          return e;
                  }
                  System.Windows.FrameworkElement result = FindElement(child, name);
                  if (result != null)
                      return result;
              }
              return null;
          }
          private EnvDTE.Events events;
          private EnvDTE.DTEEvents dteEvents;
      }
      

      来源:https://vlasovstudio.com/visual-commander/extensions.html

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-05-07
        • 2012-06-07
        • 1970-01-01
        • 2021-01-07
        • 2015-07-16
        • 2013-04-19
        • 1970-01-01
        • 2020-12-16
        相关资源
        最近更新 更多