111

是否有清除 Visual Studio 中的即时窗口的命令?

我讨厌不得不在那里抓住鼠标右键单击菜单 - 宁愿只输入“cls”或其他东西。

4

8 回答 8

150

要清除即时窗口,您可以使用>cls,它是 的预定义命令别名>Edit.ClearAll

MSDN 文章列出了所有预定义的别名,您也可以定义自己的别名。(对于 VS 2010 及更早版本,自定义别名在另一篇文章中进行了描述。)仔细查看,其中有一大堆,其中一些甚至可能源于 MS-DOS DEBUG.EXE(特别是>d, >g, >p, >q,和 >t浮现在脑海中)。


另外值得注意的是,它只需按下两个键:上下文菜单 > 全部清除调用相同的命令,并且可以使用键盘进行导航。因此,在即时窗口中,您可以按Context Menu, L

如果您的键盘上没有context-menu(您知道,介于Right Alt和之间的那个Right Ctrl),您可以使用Shift+F10代替。

于 2009-04-03T15:45:56.807 回答
50
>cls 

似乎为我做。

于 2009-04-03T15:53:51.080 回答
17
  1. 将鼠标光标放在立即窗口中。
  2. 右键单击鼠标并选择“全部清除”。
于 2015-09-17T14:18:22.287 回答
12

找到了...

">Edit.ClearAll"

或者

">cls"

于 2009-04-03T15:42:19.420 回答
3

以下是如何在运行时执行此操作:

  1. 在您的应用程序中引用 EnvDTE dll。

  2. 根据需要创建并使用此功能。

Public Sub ClearImmediateWindow()
  Try
    Dim vsWindowKindImmediateWindow As String _ 
          = "{ECB7191A-597B-41F5-9843-03A4CF275DDE}"
    Try
      Dim obj As Object = System.Runtime.InteropServices.Marshal._ 
                          GetActiveObject("VisualStudio.DTE.10.0")
      If obj IsNot Nothing Then
        Dim DTE2 As EnvDTE80.DTE2 = CType(obj, EnvDTE80.DTE2)
        For Each wndw As EnvDTE.Window In DTE2.Windows
          If wndw.ObjectKind = vsWindowKindImmediateWindow Then
            wndw.Activate()
            DTE2.ExecuteCommand("Edit.ClearAll")
            Exit For
          End If
        Next
      End If
    Catch comEx As COMException
      ' Not running from within the VS IDE?
    Catch ex As Exception
      Throw ex
    End Try
  Catch ex As Exception
    ' Handle this as you desire.
  End Try
End Sub
  End Sub
于 2012-04-13T03:19:24.853 回答
1

对于 Visual Studio 2012,我使用:

Public Sub ClearImmediateWindow()
    Dim dte As EnvDTE80.DTE2 = Marshal.GetActiveObject("VisualStudio.DTE.11.0")
    dte.Windows.Item("Immediate Window").Activate() 'Activate Immediate Window  
    dte.ExecuteCommand("Edit.SelectAll")
    dte.ExecuteCommand("Edit.ClearAll")
    Marshal.ReleaseComObject(dte)
End Sub

从代码中自动清除即时窗口(需要将 DTE 引用添加到项目中)。如果它不起作用,请根据您的 Visual Studio 版本尝试VisualStudio.DTE.8.0, 。VisualStudio.DTE.9.0...

于 2016-02-13T00:59:34.607 回答
0

我几乎逐字逐句地使用了最后一个答案并且它有效,尽管我希望将注意力重新放在它的位置上。这是略微改进的 C# 版本。我使用配置开关启用它。

#if DEBUG
    if (GetIni("Debug", "ClearImmediateWindow", true)) {
        try {
            var dte = (EnvDTE.DTE) Marshal.GetActiveObject("VisualStudio.DTE.15.0");
            var me  = dte.ActiveWindow;
            dte.Windows.Item("Immediate Window").Activate();
            dte.ExecuteCommand("Edit.ClearAll");
            me.Activate();
        }
        catch { /* Meh! */ }

万一

于 2018-07-22T21:07:49.960 回答
0

那些想知道如何在 Visual Studio Mac 上清除即时窗口的人,只需在窗口内右键单击并选择选项清除

于 2021-01-07T22:13:48.143 回答