我正在开发 Visual Studio 的扩展,我需要检测用户在 VS 用户设置中的主题。
我怎样才能实现这个目标?
我正在使用以下代码来尝试获取主题:
var shellSettingsManager = new ShellSettingsManager(ServiceProvider.GlobalProvider);
var store = shellSettingsManager.GetReadOnlySettingsStore(SettingsScope.UserSettings);
var theme = store.GetString("General", "CurrentTheme", string.Empty);
但是调试时,主题始终为空:
我相信你可以从 Theme > BackupThemeId 中获取它 我的返回
{1ded0138-47ce-435e-84ef-9ec1f439b749}
,这是 Dark
主题的 GUID。var shellSettingsManager = new Microsoft.VisualStudio.Shell.Settings.ShellSettingsManager(Microsoft.VisualStudio.Shell.ServiceProvider.GlobalProvider);
var store = shellSettingsManager.GetReadOnlySettingsStore(Microsoft.VisualStudio.Settings.SettingsScope.UserSettings);
var theme = store.GetString("Theme", "BackupThemeId", string.Empty);