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              # 打开异常设置

备注

  1. 笔记本电脑可能需要配合 Fn 键使用:
    F5、F9、F10、F11 等功能键。