Visual Studio 2022 常用快捷键速查
适用于 Windows 下的 Visual Studio 2022 默认键位。
例如Ctrl+K, Ctrl+C表示先按Ctrl+K,再按Ctrl+C。
代码编辑
Ctrl+L # 删除当前行
Ctrl+X # 剪切选中内容;未选中时剪切当前行
Ctrl+C # 复制选中内容;未选中时复制当前行
Ctrl+V # 粘贴
Ctrl+Z # 撤销
Ctrl+Y # 重做
Ctrl+A # 全选
Ctrl+K, Ctrl+C # 注释选中代码
Ctrl+K, Ctrl+U # 取消注释
Ctrl+K, Ctrl+D # 格式化整个文档
Ctrl+K, Ctrl+F # 格式化选中代码
Ctrl+Space # 触发代码补全
Ctrl+J # 打开成员列表
查找与替换
Ctrl+F # 在当前文档中查找
Ctrl+H # 在当前文档中替换
Ctrl+Shift+F # 在所有文件中查找
Ctrl+Shift+H # 在所有文件中替换
F3 # 查找下一个
Shift+F3 # 查找上一个
Ctrl+G # 跳转到指定行
代码导航
F12 # 跳转到定义
Alt+F12 # 内嵌查看定义
Ctrl+F12 # 跳转到实现
Shift+F12 # 查找所有引用
Ctrl+- # 返回上一个位置
Ctrl+Shift+- # 前进到下一个位置
Ctrl+T # 搜索文件、类型和成员
Ctrl+, # 打开全局搜索
Ctrl+Tab # 切换最近打开的文档
Ctrl+F6 # 切换到下一个文档
Ctrl+Shift+F6 # 切换到上一个文档
重构
Ctrl+. # 打开快速操作和重构菜单
Ctrl+R, Ctrl+R # 重命名变量、方法或类型
Ctrl+R, Ctrl+M # 提取方法
Ctrl+K, Ctrl+S # 使用代码片段包围选中代码
Ctrl+K, Ctrl+X # 插入代码片段
构建与运行
Ctrl+Shift+B # 生成解决方案
Ctrl+Break # 停止生成
F5 # 启动调试
Ctrl+F5 # 不调试启动
Shift+F5 # 停止调试
调试
F9 # 添加或删除断点
Ctrl+F9 # 启用或禁用断点
Ctrl+Shift+F9 # 删除所有断点
F5 # 继续运行到下一个断点
F10 # 逐过程执行,不进入方法
F11 # 逐语句执行,进入方法
Shift+F11 # 跳出当前方法
Ctrl+Alt+B # 打开断点窗口
Ctrl+Alt+C # 打开调用堆栈
Ctrl+Alt+Q # 打开快速监视
Ctrl+Alt+V, A # 打开自动变量窗口
Ctrl+Alt+V, L # 打开局部变量窗口
Ctrl+Alt+W, 1 # 打开监视窗口 1
窗口与面板
Ctrl+Alt+L # 打开解决方案资源管理器
Ctrl+Alt+O # 打开输出窗口
Ctrl+\, Ctrl+E # 打开错误列表
Ctrl+Alt+B # 打开断点窗口
Ctrl+Alt+X # 打开工具箱
Ctrl+Alt+S # 打开服务器资源管理器
F4 # 打开属性窗口
Shift+Esc # 关闭当前工具窗口
Ctrl+F4 # 关闭当前文档
Alt+F4 # 关闭 Visual Studio
高频快捷键
Ctrl+. # 快速修复和重构
Ctrl+T # 搜索文件、类型和成员
F12 # 跳转到定义
Alt+F12 # 内嵌查看定义
Shift+F12 # 查找所有引用
Ctrl+- # 返回上一个位置
Ctrl+R, Ctrl+R # 重命名符号
Ctrl+K, Ctrl+D # 格式化整个文档
Ctrl+Shift+B # 生成解决方案
F5 # 启动调试
F9 # 设置断点
F10 # 单步跳过
F11 # 单步进入
Ctrl+Alt+L # 打开解决方案资源管理器
Ctrl+Alt+O # 打开输出窗口
常用技巧
1. 优先使用快速操作
当代码出现警告、错误、可优化提示时,将光标移动到对应位置:
Ctrl+. # 打开快速操作和重构菜单
↑ / ↓ # 选择操作
Enter # 执行操作
常见用途:
Ctrl+. # 添加缺失的 using
Ctrl+. # 自动实现接口
Ctrl+. # 生成构造函数
Ctrl+. # 转换属性写法
Ctrl+. # 简化代码
Ctrl+. # 提取方法或变量
Ctrl+. 是 Visual Studio 中最值得形成肌肉记忆的快捷键之一,可调用代码修复、代码生成和重构操作。
2. 使用全局搜索代替手动找文件
Ctrl+T # 搜索文件、类型和成员
Ctrl+, # 打开搜索
建议直接输入:
UserService # 搜索类或类型
SaveUser # 搜索方法
appsettings.json # 搜索文件
大型项目中不要在解决方案资源管理器里逐层展开目录,直接搜索通常更快。
3. 使用导航历史返回原位置
F12 # 跳转到定义
Ctrl+- # 返回跳转前的位置
Ctrl+Shift+- # 再次前进
推荐操作链:
F12 # 查看方法定义
F12 # 继续查看下层调用
Ctrl+- # 返回上一层
Ctrl+- # 返回最初位置
这种方式适合阅读陌生项目和追踪调用链。
4. 使用内嵌定义避免频繁切换文件
Alt+F12 # 在当前文件内查看定义
Esc # 关闭内嵌定义窗口
适合简单查看:
Alt+F12 # 查看接口、方法或类型定义
Esc # 看完直接关闭
需要深入修改代码时再使用:
F12 # 正式跳转到定义文件
Visual Studio 支持跳转、内嵌查看以及通过编辑器导航栏定位类型和成员。
5. 使用“查找所有引用”判断修改影响
Shift+F12 # 查找符号的所有引用
重命名或删除代码前,建议先执行:
Shift+F12 # 查看变量、方法或类型的使用位置
适用于:
删除公共方法前 # 检查是否仍然被调用
修改接口前 # 检查所有实现和调用位置
重构字段前 # 检查读取和赋值位置
6. 不要使用普通查找进行重命名
不要这样修改:
Ctrl+H # 不建议用文本替换重命名代码符号
应当使用:
Ctrl+R, Ctrl+R # 安全重命名变量、方法、属性或类型
输入新名称
Enter # 应用重命名
符号重命名会基于代码语义修改引用,比普通文本替换更可靠。
7. 将长代码提取为方法
选中一段独立逻辑:
Ctrl+R, Ctrl+M # 提取为新方法
输入方法名
Enter # 完成提取
适合处理:
重复出现的逻辑 # 提取为复用方法
过长的方法 # 按职责拆分
复杂条件处理 # 提取为语义明确的方法
Visual Studio 默认提供 Extract Method 重构,也可以通过 Ctrl+. 调出。
8. 区分格式化与代码清理
只调整缩进和空白:
Ctrl+K, Ctrl+D # 格式化整个文档
Ctrl+K, Ctrl+F # 格式化选中代码
执行更完整的代码清理:
Ctrl+K, Ctrl+E # 执行代码清理
代码清理可以根据当前配置处理格式、代码风格以及部分可自动修复的问题;格式化文档主要处理空白和缩进。
9. 配置保存时自动清理代码
设置路径:
工具
→ 选项
→ 文本编辑器
→ 代码清理
→ 保存时运行代码清理配置文件
建议在代码清理配置中启用:
格式化文档 # 统一缩进和空格
删除不必要的 using # 清理无效引用
排列 using # 统一引用顺序
应用代码样式 # 按项目规则清理代码
Visual Studio 支持在显式保存文件时运行指定的代码清理配置。
10. 使用 .editorconfig 统一项目代码风格
建议在解决方案根目录维护:
.editorconfig # 保存项目统一的格式和代码风格规则
适合统一:
缩进大小 # 例如 4 个空格
换行符 # CRLF 或 LF
命名规范 # 类、字段、接口等命名规则
var 使用规则 # 控制显式类型或 var
using 顺序 # 控制引用排列
代码风格警告级别 # suggestion、warning、error
这样代码规范跟随项目,而不是依赖每个人本地的 Visual Studio 配置。
11. 使用条件断点减少无效单步调试
先设置断点:
F9 # 添加断点
然后打开断点设置,添加条件,例如:
userId == 100
或者:
order.Status == OrderStatus.Failed
适合循环、批量数据和高频调用场景,避免每次都停在无关数据上。
12. 使用“运行到光标处”
调试状态下,将光标放到目标代码行:
Ctrl+F10 # 运行到光标所在位置
比连续按多次 F10 更快:
F5 # 启动并进入断点
Ctrl+F10 # 直接运行到指定代码行
Visual Studio 默认调试快捷键包含运行到光标、单步进入、单步跳过和跳出方法等操作。
13. 合理使用单步调试
F10 # 执行当前语句,不进入调用的方法
F11 # 进入当前语句调用的方法
Shift+F11 # 跳出当前方法
F5 # 继续运行到下一个断点
Shift+F5 # 停止调试
Ctrl+Shift+F5 # 重新启动调试
推荐原则:
普通业务流程 # 优先使用 F10
怀疑方法内部有问题 # 使用 F11
进入框架或无关代码 # 使用 Shift+F11 跳出
确认当前部分正常 # 使用 F5 继续
14. 使用调用堆栈定位代码来源
调试时打开:
Ctrl+Alt+C # 打开调用堆栈
用途:
查看当前方法由谁调用
查看程序执行路径
切换到上层调用位置
定位异常最初来源
遇到“这个方法为什么会被执行”的问题时,调用堆栈通常比盲目搜索更有效。
15. 使用监视窗口跟踪关键变量
Ctrl+Alt+Q # 快速监视选中表达式
Ctrl+Alt+W, 1 # 打开监视窗口 1
Ctrl+Alt+V, L # 打开局部变量窗口
Ctrl+Alt+V, A # 打开自动变量窗口
可以添加表达式:
user.Id
order.Items.Count
result?.Data
list.Where(x => x.IsActive).Count()
复杂对象不要一直展开局部变量窗口,直接将关键字段添加到监视窗口更清晰。
16. 使用异常设置直接定位报错位置
打开异常设置:
Ctrl+Alt+E # 打开异常设置窗口
可配置:
Thrown # 异常抛出时立即中断
User-unhandled # 用户代码未处理时中断
当异常被框架捕获,导致程序只显示一个模糊错误时,可以启用对应异常的 Thrown,直接停在异常首次产生的位置。
17. 使用代码片段减少模板代码
Ctrl+K, Ctrl+X # 插入代码片段
Ctrl+K, Ctrl+S # 使用代码片段包围选中内容
C# 中常见片段:
prop # 生成自动属性
ctor # 生成构造函数
for # 生成 for 循环
foreach # 生成 foreach 循环
if # 生成 if 结构
try # 生成 try-catch 结构
输入片段名称后通常可以按:
Tab, Tab # 展开代码片段
18. 配置自动保存
设置路径:
工具
→ 选项
→ 环境
→ 文档
→ 自动保存
启用后,Visual Studio 可以在窗口失去焦点时保存有改动的代码文档。
19. 保持解决方案资源管理器跟随当前文件
在解决方案资源管理器中启用:
跟踪活动项 # 当前打开文件在项目树中自动定位
或者按需使用:
与活动文档同步 # 定位当前文件在项目中的位置
适合目录层级较深、项目数量较多的解决方案。
20. 给高频命令自定义快捷键
设置路径:
工具
→ 选项
→ 环境
→ 键盘
操作流程:
搜索命令名称
→ 查看当前快捷键
→ 按下新的快捷键
→ 检查是否已被占用
→ 点击“分配”
Visual Studio 的快捷键会受开发配置文件、当前上下文和扩展影响,也支持导出自定义配置。
推荐优先掌握
Ctrl+. # 快速修复和重构
Ctrl+T # 搜索文件、类型和成员
F12 # 跳转到定义
Alt+F12 # 内嵌查看定义
Shift+F12 # 查找所有引用
Ctrl+- # 返回上一位置
Ctrl+R, Ctrl+R # 安全重命名
Ctrl+K, Ctrl+D # 格式化文档
Ctrl+K, Ctrl+E # 执行代码清理
F9 # 添加或删除断点
Ctrl+F10 # 运行到光标处
Ctrl+Alt+C # 查看调用堆栈
Ctrl+Alt+E # 打开异常设置
备注
- 笔记本电脑可能需要配合 Fn 键使用:
F5、F9、F10、F11 等功能键。