【问题标题】:Keyboard shortcut in Visual Studio to select the Current BlockVisual Studio 中用于选择当前块的键盘快捷键
【发布时间】:2010-10-26 08:41:19
【问题描述】:

在 VB Classic、VBA 以及 Visual Studio 中,您可以在靠近代码块的左边距的地方单击鼠标,它将选择整个当前块(子、函数等)。在 Visual Studio 中,此可点击区域与左侧的行号相邻。

是否有可以完成相同工作的键盘快捷键?即选择“当前区块”

【问题讨论】:

    标签: vb.net visual-studio keyboard-shortcuts


    【解决方案1】:

    使用 ReSharper,反复按Ctrl-w,它将快速选择所需的范围。

    【讨论】:

      【解决方案2】:

      当我遇到 DevExpress 的 CodeRush Xpress(免费)时,我也在寻找同样的东西。您可以在这里获取更多信息:http://www.devexpress.com/Products/Visual_Studio_Add-in/CodeRushX/

      安装 CodeRush Xpress 后,您可以通过点击键盘快捷键来选择代码块。此实现的优点在于,它允许您通过每次按键来增加或减少选择范围。

      例如:

      Private Sub MySub ()
        If myBooleanValue Then
          txtResult.text = "The quick brown fox jumps over the lazy dog"
        Else
          txtResult.text = "nevermind"
        End If
      End Sub
      

      将光标放在“lazy”中的“z”之前,然后使用键盘快捷键(我将我的绑定到数字键盘上的“+”)增加选择范围,反复增加选择范围,你会得到以下选择:

      • 按1:敏捷的棕狐跳过懒狗
      • 按2:“敏捷的棕狐跳过懒狗”
      • 按 3:txtResult.text = "敏捷的棕狐跳过懒狗"
      • 按 4:(选择整个 If Then 语句)
      • 按 5:(选择整个子)

      按键盘快捷键减少选择会产生相反的效果。

      我强烈建议检查 CodeRush Xpress。我非常喜欢它,我买了完整版(每一分钱都值得。)

      【讨论】:

      • 顺便说一句,CodeRush 的快捷方式名称是 SelectionExpand 和 SelectionReduce... Ctrl + W 和 Ctrl + Shift + W 默认情况下
      【解决方案3】:

      对于 C#,您可以通过将光标放在左大括号旁边并按 Shift-Ctrl-} 选择大括号之间的所有代码来获得类似的效果。这个和其他好东西here

      或者,对于 VB,一个 Visual Studio 宏,用于从您将光标放置到下一个 End Sub 的任何位置进行选择。将它应用到您自己的键盘快捷键上,您应该会有一些非常实用的东西:

      Sub SelectToEndSub()
          Dim objSel As TextSelection = DTE.ActiveDocument.Selection
          Dim lStartLine As Long = objSel.TopPoint.Line
          objSel.FindPattern("End Sub")
          Dim lEndline As Long = objSel.TopPoint.Line
          objSel.GotoLine(lStartLine)
          objSel.LineDown(True, lEndline - lStartLine + 1)
      End Sub
      

      【讨论】:

      • vb.net 有类似的东西吗?
      • 道歉;我应该意识到你在说 VB。我找不到键盘快捷键,但可以使用宏。我可能会回复你...
      • 没有必要道歉,无论如何都尝试了你的东西,也尝试了可能的 vb 等价物,但没有骰子。这个链接也很有趣。
      • 试试上面的 Visual Studio 宏。非常点头,但似乎在我的简短测试中有效
      猜你喜欢
      • 2016-07-12
      • 1970-01-01
      • 2011-07-01
      • 1970-01-01
      • 2015-12-13
      • 1970-01-01
      • 2010-09-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多