5

我目前正在 BIDS(SQL Server 2008 R2、VS2008)中创建一些报告。

我觉得我经常需要访问对话框Expression...Textbox properties...设计 器

文本框上下文菜单

但它会减慢我一直使用鼠标和上下文菜单的速度。(它们甚至不是菜单中的顶级项目!)我的笔记本电脑上的键盘更糟糕,不幸的是它没有上下文菜单按钮。

有没有办法为这些对话框分配键盘快捷键(如CTRL1& )?CTRL2

我试图在键盘自定义对话框中找到它们,甚至尝试录制宏但没有任何效果。

我得到的最接近的是ShiftF10EShiftF10P但为此我需要双手。

几年前我最后一次在 VS2005 中处理报告时,我得到了它。

4

1 回答 1

1

通常使用 Visual Studio (BIDS) 中的快捷方式,您可以转到工具 --> 选项 --> 环境 --> 键盘

如果您过滤命令列表以使列表更短,您可以找到所需的命令并单击“按快捷键:”文本框,然后按所需的快捷键组合。

我试过了,但与 Expression 相关的所有内容都不起作用:(。基本上很难知道所有这些命令是什么,也很难找到你想要的那个。

但还有另一种选择。这有点绕圈子,但效果很好。它基本上涉及创建一个宏,它将 shift-F10-E 发送到您的活动上下文,然后将该宏绑定到您选择的快捷键,例如 CTRL-1。我正在使用 Visual Studio 2008(从 SQL Server 2008R2 磁盘安装)

1) 通过选择 View--> Other windows --> Macro Explorer 来显示宏窗口

2)在“MyMacros”下创建一个新模块

3) 输入这个 VB.NET 代码:

Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics

Public Module UserShortcuts
    Public Sub ShowExpression()
        System.Windows.Forms.SendKeys.SendWait("+{F10}E")
    End Sub
End Module

4) 转到工具--> 选项--> 环境--> 键盘

5)在“显示包含的命令”文本框中键入“宏”,上面代码中模块中定义的子将出现,您可以突出显示它。

6) 然后您可以选择“按下快捷键”文本框并键入 [CTRL] + 1或您喜欢的任何内容,然后单击 [分配] 按钮。

7) 这个 MSDN 页面显示了您可以为 SendWait 方法选择的所有关键选项。如果要添加更多键盘快捷键,只需在模块中为每个快捷键添加更多 Sub() 条目,然后按照步骤 4 到 6 映射它们。

我在这里写了这个解决方案的扩展版本。

于 2013-01-31T06:44:32.457 回答