我有一个包含多个项目的巨大解决方案。有时我需要导航到解决方案资源管理器中的文件。使用 VS 2010 的“导航至”功能,我可以在 Visual Studio 2010 中按名称打开任何文件,但我还希望能够在解决方案资源管理器中选择文件吗?
在解决方案资源管理器中有一个跟踪活动(打开和查看)项目的选项。如果文件在视图中,将选择解决方案资源管理器中的文件。
工具->选项->项目和解决方案->在解决方案资源管理器中跟踪活动项目
VS2012 添加了一个名为 SolutionExplorer.SyncWithActiveDocument
的新命令。 c# 的默认快捷键是 Ctrl+[,S
此命令将导航到解决方案资源管理器中的活动文件。
此外,您似乎需要关闭“在解决方案资源管理器中跟踪活动项目”选项。
Ctrl
+[
S
被默认设置为签出文件,而 SolutionExplorer.SyncWithActiveDocument
未配置。
Shift
+ Alt
+ L
快捷方式。
安装 ReSharper 后,Shift+Alt+L 将在 Visual Studio 2008+ 的解决方案资源管理器中找到当前文件。
我发现轨道选项有点烦人。
我更喜欢使用 DPack。它包含“在解决方案资源管理器中定位”操作,以及许多其他功能(有些功能在 VS2010 中没有那么强大,比如他们的浏览器),并且它是免费的。
https://i.stack.imgur.com/aaATN.png
请注意,ReSharper 还具有比 DPack 更有效的定位功能(在某些情况下,如果文件折叠在文件夹后面,DPack 的定位将不起作用),但您不想{ 2} 仅适用于此 feature。
Brian Schmitt 有一篇很棒的 Locate File in Solution Explorer – Visual Studio Macro 帖子。该宏非常简单快捷。基本上它会切换设置
Tools->Options->Projects and Solutions->Track Active Item in Solution Explorer
这样当前文件最终会在解决方案资源管理器中被选中,但是由于它没有保持打开状态,因此您不会因解决方案资源管理器节点为您访问的所有文件而展开而烦恼。
Public Sub LocateFileInSolutionExplorer()
DTE.ExecuteCommand("View.TrackActivityinSolutionExplorer")
DTE.ExecuteCommand("View.TrackActivityinSolutionExplorer")
DTE.ExecuteCommand("View.SolutionExplorer")
End Sub
Bind a Keyboard ShortCut 将此自定义宏有效地创建应该是内置的 Visual Studio 功能。
如果您有 ReSharper 并且想要将“在解决方案资源管理器中定位”添加到选项卡的上下文菜单:
转到工具 -> 自定义 -> 命令 -> 上下文菜单 选择“其他上下文菜单 | Easy MDI 文档窗口”。单击“添加命令”。选择“Resharper”->“ReSharper_LocateInSolutionOrAssemblyExplorer”(在VS2019中,类别名称改为“Extensions”)“OK”->“Close”
现在,当右键单击任何选项卡时,您将看到一个新选项:在解决方案资源管理器中定位。
更新:
根据@jeremy-paskali 的评论,您可以为此命令设置键盘快捷键:
转到工具->自定义->“键盘...”在“显示包含的命令”字段中搜索“ReSharper.ReSharper_LocateInSolutionOrAssemblyExplorer”并选择它。在下面的下拉列表中查看当前分配的快捷方式。如果需要,请进行任何更改。 “确定”->“关闭”
Shift+Alt+L
对您不起作用,那么这肯定可以解决问题。
Visual Studio 2012 有一个新的快捷方式 Ctrl [, S
。是的,您必须键入 Ctrl [
,然后释放,然后立即键入 S
(或单击“已探索解决方案”顶部的小同步图标)。它将与项目同步。
当然,您可以更改快捷方式。我想我会尝试 Alt+L
进行定位。
如果要更改快捷方式,则 Options\Environment\Keyboard
下的命令名称为 SolutionExplorer.SyncWithActiveDocument
。
通常这比总是跟踪更有用,这在旧版本中总是一场灾难,因为它会连续跟踪 100 个项目,然后在整个地方跳跃......
Ctrl+', s
。因此,您必须用引号 '
更改 [
。我希望这对某人有所帮助。
我知道它有点太晚了,但希望它可以帮助别人。现在最好的选择是安装名为 - Productivity Power Tools 的 Microsoft Visual Studio 插件。
http://visualstudiogallery.msdn.microsoft.com/d0d33361-18e2-46c0-8ff2-4adea1e34fef
随之而来的是“解决方案导航器”(解决方案资源管理器的替代品,有很多好处) - 然后您可以使用它来过滤文件以仅显示“打开”。您甚至可以过滤文件以显示“已编辑”和“未保存”。
如果您只想通过键盘快捷键跟踪当前文件 - 活动是“View.TrackActivityinSolutionExplorer”(在此处分配键 -> 工具 - 选项 - 环境 - 键盘)
这对我有用
现在有几种内置方法可以实现这一点:
配置 VS 在解决方案资源管理器中跟踪活动项目:这可以通过在解决方案资源管理器中选择“跟踪活动项目”来完成
工具 > 设置 > 项目和解决方案 > 常规
https://i.stack.imgur.com/Y5sYQ.png
使用“与活动文档同步”:这可以通过两种方式完成。如果您碰巧使用像我这样的 AZERTY 键盘,请使用默认组合键 CTRL+]+S CTRL+)+S 触发 SolutionExplorer.SyncWithActiveDocument 命令。通过使用解决方案资源管理器顶部的“与活动文档同步”按钮。该按钮看起来像 2 个并列的箭头。如果您的版本比 VS2019 版本 16.10.2 旧,则此按钮如下所示: 从 VS2019 版本 16.10.2 开始,此按钮将如下所示:
在 Visual Studio 2010 中,您可以打开“在解决方案资源管理器中跟踪活动项目”选项。这意味着每当您在文档之间切换时,新文档都会在解决方案资源管理器中被选中。如果您的解决方案有很多文件夹,这可能会很烦人,因为当您在解决方案中移动文件时,所有文件夹都将保持打开状态。
Visual Studio 2012 引入了新的“与活动文档同步”功能。三是解决方案资源管理器顶部的一个按钮,或者您可以使用快捷方式 Ctrl + [, S
。
https://i.stack.imgur.com/iuKyI.png
这实际上是内置于 Visual Studio 中的,不需要 ReSharper(我喜欢 BTW)。
如果您想通过命令在解决方案资源管理器中选择文件并且不想安装任何东西,那么我会推荐这个 macro。
我已经对其进行了测试,将快捷方式设置为 Alt+T,我可以确认它适用于 VS 2010。
感谢 Dan Vanderboom 编写它。
对于使用法语 AZERTY 键盘的 Visual Studio 2017,命令与 Aaron Carlson 所述相同,但键盘快捷键不同。
用于 c# 导航到活动文件的 AZERTY 键盘快捷键是 Ctrl+),Ctrl+S
我在此页面上检查了 VS2017 中 QWERTY 用户的快捷方式没有更改http://visualstudioshortcuts.com/2017/
Visual Studio 没有提供一种简单的方法来按需在解决方案资源管理器中找到您正在编辑的当前文件。您可以将解决方案资源管理器设置为始终与此简单设置保持同步:
工具 > 选项 > 项目和解决方案 > 常规。选中“在解决方案资源管理器中跟踪活动项目”。
不定期副业成功案例分享