Есть ли способ добавить пользовательский фильтр файлов в диалог открытия файлов Visual Studio через расширение VSIX?

Я реализую набор расширений MEF через проект расширения VSIX. Это для небольшого внутреннего DSL.

Я могу получить подсветку синтаксиса, работающую просто отлично.

Я хотел бы иметь возможность иметь связанную запись фильтра файлов в диалоговом окне "Открыть файл" в Visual Studio.

Есть ли способ сделать это через расширение VSIX? Если нет, каков санкционированный способ добавления фильтров в этот список?

Я не видел в системе VSPackage ничего такого, что могло бы сделать это.

1 ответ

Если вы разработали пакет только с пользовательской языковой службой и хотите иметь возможность создавать собственные проекты с вашим пользовательским типом проекта - вам необходимо разработать систему проектов (см. Пример системы проекта IronPython и посмотрите MSDN).

Но если вы просто хотите добавить свое собственное расширение в одну из существующих групп проектов в диалоговом окне "Открыть файл" - вам просто нужно создать собственный шаблон элемента. Что-то вроде этого:

<VSTemplate Version="2.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Item">
  <TemplateData>
    <DefaultName>Class.my</DefaultName>
    <Name>MY File Class</Name>
    <Description>An empty class definition</Description>
    <Icon>__TemplateIcon.ico</Icon>
    <ProjectType>[PUT HERE THE PROJECT TYPE YOU WANT TO PLACE YOUR TEMPLATE UNDER]</ProjectType>
    <SortOrder>10</SortOrder>
  </TemplateData>
  <TemplateContent>
    <References />
    <ProjectItem SubType="Code" TargetFileName="$fileinputname$.my" ReplaceParameters="true">Class.my</ProjectItem>
  </TemplateContent>
</VSTemplate>

Самый простой способ создать новый шаблон - это извлечь существующий, распаковать из ZIP, настроить все, что вам нужно, и установить его обратно в IDE. Но вы также можете создать его с нуля и установить во время настройки в VS. Я думаю, у вас достаточно указателей, чтобы копать глубже;)

Другие вопросы по тегам