在Visual Studio 2017中,可以在“文件夹视图”模式下工作。这是打开文件夹(文件 - 打开 - 文件夹...)时运行的模式。您也可以使用'解决方案资源管理器切换到它。 (从解决方案视图切换到'文件夹视图')。
是否有可能以编程方式确定(如果是,那么如何)此时启用的模式是什么?
我看到IVsSolutionEvents7
接口,其中包含被调用的方法,例如,打开或关闭文件夹时(文件 - 打开 - 文件夹/关闭文件夹),但没有找到任何有助于解决的问题上述问题。
提前感谢您的帮助。
答案 0 :(得分:3)
您可以在IVsSolution参考上使用__VSPROPID7.VSPROPID_IsInOpenFolderMode,代码如下:
var solution = (IVsSolution)ServiceProvider.GetService(typeof(SVsSolution));
// __VSPROPID7 needs Microsoft.VisualStudio.Shell.Interop.15.0.DesignTime.dll nuget
// folderMode will be a boolean
solution.GetProperty((int)__VSPROPID7.VSPROPID_IsInOpenFolderMode, out object folderMode);