Зарегистрируйте пользовательский тип файла в редакторе пользовательского интерфейса в Visual Studio 2010 - PullRequest
4 голосов
/ 07 февраля 2011

Я нашел старую статью под названием LearnVSXNow и часть # 30 - Пользовательские редакторы в Visual Studio . Существует пример проекта Редактор элементов блога , в котором показано, как сделать пользовательский тип файла назначенным с помощью пользовательского редактора интерфейса пользователя для этого расширения типа файла (.blit) В этом примере используется проект VSXtra , который написан для Visual Studio 2008 .

Может кто-нибудь подсказать мне какое-нибудь учебное пособие, как или что-то, как сделать то же самое для Visual Studio 2010 ? Моя цель - зарегистрировать расширение настраиваемого типа файла (например, * .myext1) в Visual Studio 2010 и назначить свой собственный конструктор пользовательского интерфейса (WinForms, производный от UserControl) для визуальной обработки редактирования содержимого такого файла.

Я нашел несколько примеров, но каждый из них показывает только изменения в текстовом редакторе кода (выделение некоторых слов и т. Д.). Но я хочу показать свое собственное окно инструментов с моим пользовательским контролем внутри него.

PS: Часть создания пользовательского окна инструментов с моим собственным пользовательским контролем внутри него не является проблемой, я использую Шаблон проекта VSPackage Builder , чтобы создать и зарегистрировать его в visx. Моя проблема заключается в том, как зарегистрировать пользовательский тип файла, чтобы использовать это пользовательское окно инструментов для редактирования файла.

1 Ответ

10 голосов
/ 07 февраля 2011

Хотя основной текстовый редактор значительно изменился (почти полностью переписан, разработан на основе MEF) в Visual Studio 2010, общая инфраструктура для регистрации и предоставления пользовательских редакторов / дизайнеров не изменилась.

The Страница «Создание пользовательских текстовых редакторов и дизайнеров» на MSDN - хорошее место для начала.Вы также должны иметь возможность пройти через мастер VSPackage и выбрать «Пользовательский редактор», чтобы установить базовый редактор.Это даст вам простой редактор RTF.

Вы также можете ознакомиться с этими примерами в галерее кодов MSDN для получения дополнительных идей и вдохновения:

Обычно рекомендуется, чтобы редакторы находились в окне документа (в отличие от окна инструмента).Это парадигма, которую используют почти все встроенные редакторы / дизайнеры в Visual Studio, и именно этого ожидают пользователи, открывая что-то из Solution Explorer.Редактирование вещей в ToolWindow может показаться немного неестественным.

Насколько я понимаю, VSXtra предоставляет некоторые дополнительные вспомогательные / базовые классы (помимо того, что поддерживает Microsoft), чтобы упростить различные задачи (например, написание собственного редактора / дизайнера).Однако создание пользовательского редактора ни в коем случае не требуется.

...