Расширение Visual Studio - Невозможно получить свойства моей созданной поперти-страницы в инструментах - PullRequest
0 голосов
/ 16 апреля 2020

Я разрабатываю расширение Visual Studio с VS2019.

Я успешно создал несколько страниц свойств в диалоге настроек tools -> options:

[ProvideOptionPage(typeof(DoxygenToolsOptionsFunction), "Doxygen", "Function", 0, 0, true)]
[ProvideOptionPage(typeof(DoxygenToolsOptionsHeader), "Doxygen", "Header", 0, 0, true)]
[ProvideOptionPage(typeof(DoxygenToolsOptionsGeneral), "Doxygen", "General", 0, 0, true)]
public sealed class DoxygenCommentsPackage : AsyncPackage
{

И это работает, как и ожидалось:

enter image description here

Все свойства успешно сохранены. Но теперь я хочу использовать свойства в моем компоненте MEF IVsTextViewCreationListener. Я попробовал это с помощью следующего кода:

Properties propertiesList = m_dte.get_Properties("Doxygen", "Function");
string format = (string)propertiesList.Item("Format").Value;

Но в первой строке выдает System.InvalidCastException.

Со страницами по умолчанию, такими как

Properties propertiesList = m_dte.get_Properties("FontsAndColors", "TextEditor");
int fontSize = (short)propertiesList.Item("FontSize").Value;

все работает нормально.

Я что-то забыл? Нужно ли регистрировать страницу каким-либо образом?

Спасибо за помощь,
Финн Г.

...