Visual Studio 2010如何一键复制窗体控件名称至剪贴板?
没问题!在Visual Studio 2010里,不管是用宏手动实现,还是找适配的旧版本扩展,都能搞定右键复制控件名称的需求,下面给你一步步讲清楚:
一、用Visual Studio宏实现「Copy Control Name」功能
VS2010自带宏编辑器,完全可以自己写个小宏实现这个功能,步骤很简单:
- 打开宏资源管理器:按下
Alt+F8,或者通过顶部菜单「Tools」→「Macros」→「Macro Explorer」打开。 - 右键「MyMacros」文件夹,选择「New Module」,给模块起个好记的名字,比如
ControlNameCopier。 - 双击刚创建的模块,把下面的VB宏代码粘贴进去:
Imports System Imports EnvDTE Imports EnvDTE80 Imports System.Windows.Forms Public Module ControlNameCopier Sub CopyControlName() Dim sel As Selection = DTE.ActiveWindow.Selection If sel Is Nothing Then MessageBox.Show("没有选中任何控件!", "复制控件名称", MessageBoxButtons.OK, MessageBoxIcon.Warning) Return End If Dim control As Object = sel.Item(1).Object If control Is Nothing Then MessageBox.Show("选中的不是可识别的控件!", "复制控件名称", MessageBoxButtons.OK, MessageBoxIcon.Warning) Return End If Try Dim controlName As String = control.Name Clipboard.SetText(controlName) MessageBox.Show("控件名称已复制:" & controlName, "复制控件名称", MessageBoxButtons.OK, MessageBoxIcon.Information) Catch ex As Exception MessageBox.Show("复制失败:" & ex.Message, "复制控件名称", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try End Sub End Module
- 保存宏后,给它绑定快捷键(可选但推荐):
- 打开「Tools」→「Options」→「Environment」→「Keyboard」。
- 在「Show commands containing」输入框里,搜
Macros.MyMacros.ControlNameCopier.CopyControlName。 - 选中你想用的快捷键组合(比如
Ctrl+Shift+C),点击「Assign」再点「OK」就完成了。
- 要是想给右键菜单加这个选项:
- 打开「Tools」→「Customize」→「Commands」标签页,找到「Context Menus」→「Windows Forms Designer」→「Control」,点击「Add Command」,然后在弹出的窗口里找到刚才的宏,添加进去就行。
二、适配Visual Studio 2010的扩展工具
你提到的CompCopy确实只支持2017及以上版本,但有几个适配2010的扩展可选:
- Copy Control Name:这个扩展就是专门针对VS2010及更早版本做的,安装后直接右键控件就能看到「Copy Name」选项,不用自己写宏。你可以去Visual Studio Gallery的存档库搜索它。
- DevExpress CodeRush Classic:虽然是付费工具,但它的免费基础版也包含控件名称复制功能,而且完美兼容VS2010,还附带很多其他开发辅助功能,比如代码重构、快速导航之类的。
内容的提问来源于stack exchange,提问作者Max
相关产品推荐
相关产品推荐

