Расширение возможностей IntelliSense для XAML-редактора Visual Studio 2010Источник: mhabrahabr
Оценив новые возможности IntelliSense в редакторе кода VS 2010, по принципу PascalCase, когда по ходу печати вы получаете список предполагаемых команд. К сожалению, новые вкусные возможности не доступны в XAML редакторе. Но нет повода для печали…
Возможности
Обзор PascalCaseПринцип PascalCase-фильтрации позволяет быстро находить требуемые элементы, поиск идет по заглавным буквам и начинает искать при наличии минимум двух заглавных букв. Ниже представленное изображение демонстрирует как работает данный способ фильтрации.
Установка сборки, используя xmlns PascalCase выполняется в три счёта.
Автоматически сужающийся фильтр спискаКогда фильтр сужения списка активен, то добавляет две дополнительные возможности:
Посмотрите как легко найти Grid.Row или Grid.RowSpan, при включенном сужении списка.
Фильтрация элементов списка по типуСобственно данный пункт и был основной движущей силой при написании расширения. Я немного растерялся, при вводе XAML я получил список состоящий из 2 свойств, 4 событий и 75 пространств имен. Проблема решена. Стандартный список элементов, заметьте, какое огромное количество пространств имен.
Отожмите кнопку с панели и пространства имен исчезнут со списка:
Другие кнопки работают по такому же принципу. Серый фон обозначает активное состояние. Белый фон - неактивное состояние.
xamlns IntelliSenseНиже представленное изображение демонстрирует две кнопки фильтра, которые предоставляет xamls IntelliSense.
Еще один способ получить ваши сборки в быстрый способ продемонстрирован ниже. Два кнопке фильтра в стандартном состоянии и я ввожу WC для быстрого поиска сборки в моём проекте.
Ниже, я использую функционал автоматически сужающегося списка для поиска всех сборок, которые содержат слово "media". Поиск включает в себя так же значения в скобках.
Менеджер расширенийДля просмотра установленных расширений используйте меню Visual Studio 2010: Tools->Extension Manager:
Отсюда вы можете выключить или удалить любое расширение
Вы так же можете изменить настройки для расширений через Tools->Options.
ТребованияVisual Studio 2010 Release Candidate или старше. Возможно будет работать на Visual Studio 2010 Beta2, но я не тестировал.
ЗагрузкиXAML Editor IntelliSense Presenter Extension VSIX Installer (41KB) XAML Editor IntelliSense Presenter Extension Source Code (не обязательно) (39KB) (C# исходный код)
Для исходного кодаЕсли вы все же решили загрузить исходный код и, возможно, модифицировать его. Вы должны обязательно деинсталировать расширение, если вы использовали VSIX для его установки. Вдобавок, если вы желаете создать своё собственное расширение, убедитесь, что следующая папка пустая, до начала создания нового проекта. Если у вас появились конфликты в проекте, или присутствует другое IntelliSense-расширение в этой папке, то у вас могут возникнуть конфликты и при отладке. C:\Users\<имя пользователя>\AppData\Local\Microsoft\VisualStudio\10.0Exp\Extensions
Как оно работает?Я многому научился создавая данное расширение. На следующих неделях, я объясню как работает код данного расширения и чем он отличается от примера на CodePlex. |