Использование VSTO, как я могу получить уведомление об изменениях в цветовой схеме MS Office?VSTO - MS Office 'Color Scheme' измененное событие
ответ
Надеется, что-то лучше, существует с Office 2010. Вот что я использовал для Office 2007 и Word (Это не уведомление в любом случае, просто что-то, чтобы проверить):
const string OfficeCommonKey =
@"Software\Microsoft\Office\12.0\Common";
const string OfficeThemeValueName = "Theme";
const int ThemeBlue = 1;
const int ThemeSilver = 2;
const int ThemeBlack = 3;
using (RegistryKey key = Registry.CurrentUser.OpenSubKey(OfficeCommonKey, false))
{
int theme = (int)key.GetValue(OfficeThemeValueName,1);
switch (theme)
{
case ThemeBlue:
//...
break;
case ThemeSilver:
//...
break;
case ThemeBlack:
//...
break;
default:
//...
break;
}
}
У меня есть код, подобный что предоставил Майк Риган. Еще одна вещь, которую я делаю, - это запустить отдельный поток, который проверяет эту запись в реестре каждую секунду. Всякий раз, когда изменяется значение реестра, я запускаю настраиваемое событие. Остальная часть кода в моей надстройке обрабатывает событие и изменяет элементы пользовательского интерфейса, соответствующие новой теме в этом обработчике событий.
Обратите внимание, что (конечно) это было изменено в Бюро 2013. Следующие константы должны быть использованы вместо:
const string OfficeCommonKey =
@"Software\Microsoft\Office\15.0\Common";
const string OfficeThemeValueName = "UI Theme";
const int ThemeWhite = 0;
const int ThemeLightGray = 1;
const int ThemeDarkGray = 2;
Обратите внимание, что если тема никогда не была установлена, то «UI Theme» ключ выиграл не существует. Я считаю, что по умолчанию это «0» («Белая тема»).
- 1. MS Office Word VSTO «Загрузка по требованию»
- 2. Current Notepad ++ Color Scheme
- 3. Kibana 4 Color Scheme
- 4. Mysql Color Scheme
- 5. Matlab Scatter Plot Color Scheme
- 6. IntelliJ Java Editor Color Scheme
- 7. VSTO и Office 2010
- 8. C#: VSTO -> Службы MS Office теряют фокус?
- 9. Visual Studio Tools for Office (VSTO) + шаблон документа MS Word
- 10. Можно ли добавить VSTO Addins без установки MS Office?
- 11. Загрузитель в MS Office Надстройка
- 12. TextBox Измененное событие
- 13. Название окна Измененное событие
- 14. Прикрепленное свойство Измененное событие?
- 15. Office Excel VSTO Workbook Project Application.ThisWorkbook COMException
- 16. Обновить Измененное поле в Office 365
- 17. Извлечение свойств MS Office
- 18. MS Office Javascript API
- 19. MS Office Добавить
- 20. дешифрование MS office
- 21. Обновление MS Office
- 22. Преобразование MS Office XML
- 23. MS Office Webservice toolkit для Office 2007?
- 24. проверено измененное событие не срабатывает
- 25. Закрыть MS Project, используя VSTO
- 26. Office 2010 addin - версия VSTO confusion
- 27. VSTO: установить надстройку в Outlook Office 2003
- 28. Office 2010 VSTO AddIn Не загружается
- 29. Развертывание VSTO 2010 Addin в Office 2007
- 30. Рекомендации по развертыванию Office 2016 VSTO Addins