在Visual Studio 2017中使用项目确定工作模式

时间:2018-02-28 12:07:03

标签: visual-studio visual-studio-2017 vsix vs-extensibility

在Visual Studio 2017中,可以在“文件夹视图”模式下工作。这是打开文件夹(文件 - 打开 - 文件夹...)时运行的模式。您也可以使用'解决方案资源管理器切换到它。 (从解决方案视图切换到'文件夹视图')。

是否有可能以编程方式确定(如果是,那么如何)此时启用的模式是什么?

我看到IVsSolutionEvents7接口,其中包含被调用的方法,例如,打开或关闭文件夹时(文件 - 打开 - 文件夹/关闭文件夹),但没有找到任何有助于解决的问题上述问题。

提前感谢您的帮助。

1 个答案:

答案 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);