Можно ли создать надстройку Visual Studio 2010, использующую дисплей WPF?

Мы работаем над созданием специализированного графического редактора для наших корпоративных приложений. Мы рассмотрели и отклонили DSL. В идеале я хотел бы, чтобы основной интерфейс редактора был закреплен, как окна кода, и использовал WPF для рисования. Может ли кто-нибудь указать мне на какую-то документацию, чтобы направить меня на правильный путь?

Спасибо.

Колин.

ОБНОВЛЕНИЕ: Это начинает выглядеть как «нет». Из http://msdn.microsoft.com/en-us/library/bb166228.aspx: "Окна документов создаются путем реализации редактора. Интерфейс IVsEditorFactory создает окна документов как часть создания экземпляра редактора. Дополнительные сведения см. в разделе Доступ к редактору с помощью устаревших интерфейсов".

Переход по ссылке на http://msdn.microsoft.com/en-us/library/dd885127.aspx дает следующий совет: «Вы можете получить доступ к редактору Visual Studio из устаревших интерфейсов. SDK Visual Studio включает адаптеры, известные как прокладки, которые позволяют этим интерфейсам взаимодействовать с новым редактором. Тем не менее, мы рекомендуем вам обновить устаревший код, чтобы использовать новый API редактора. Ваш код будет работать лучше, и вы сможете использовать новые технологии, такие как Windows Presentation Foundation (WPF) и Managed Extensibility Framework (MEF)».

Итак, подведем итог: если вы хотите реализовать редактор, вы должны использовать устаревшие интерфейсы, но вы не должны использовать устаревшие интерфейсы, потому что тогда вы не сможете использовать WPF или MEF.

Серьезно Майкрософт, WTF?

ОБНОВЛЕНИЕ 2: Теперь, когда у меня есть собственные имена («пользовательский редактор»), я смог найти следующую тему: http://social.msdn.microsoft.com/Forums/en-US/vsxprerelease»./thread/9e605d0f-1296-47c9-a534-e54905251ebe

Я до сих пор не понимаю, почему они не могли включить это где-нибудь в заметное место в документах MSDN. Вы знаете, как где-то рядом, где вам говорят, что вы не можете использовать WPF, если вы используете устаревшие интерфейсы.


person Colin Young    schedule 21.10.2010    source источник
comment
Связанный вопрос: ссылка   -  person sgnsajgon    schedule 12.09.2013
comment
Другой связанный вопрос с полезными ответами: visual-studio-how-to -write-editor-extensions-with-wpf   -  person sgnsajgon    schedule 19.09.2013


Ответы (1)


Создание пользовательского редактора не должно быть ужасно болезненным. Да, пользовательский редактор потребует реализации нескольких интерфейсов, но вы все равно можете использовать WPF для фактического создания элемента управления, размещенного во фрейме документа VS.

В блоге DiveDeeper есть отличные ресурсы для изучения создания пользовательского редактора.

Я бы рекомендовал использовать такую ​​библиотеку, как VSXtra. много работы для вас. Он предоставит вам хорошую базовую реализацию фабрики редакторов, панели редактора, пакета и т. д. Иштван Новак пишет о создании собственного редактора с помощью своей библиотеки VSXtra в эту запись в блоге.

person Matt    schedule 20.06.2011
comment
Эти ресурсы посвящены написанию конструктора с использованием Windows Forms, а не WPF, и в вопросе говорится о WPF. Кроме того, существуют ограничения, описанные в первом комментарии второй статьи. - person sgnsajgon; 12.09.2013