Расширение возможностей IntelliSense для XAML-редактора Visual Studio 2010
Оценив новые возможности IntelliSense в редакторе кода VS 2010, по принципу PascalCase, когда по ходу печати вы получаете список предполагаемых команд. К сожалению, новые вкусные возможности не доступны в XAML редакторе. Но нет повода для печали…
Возможности
- Поддержка принципа PascalCase
- Опциональные фильтры
- Фильтрация на основе типа элемента
- xmlns IntelliSense опции
- Отображение/скрытие только сборок проекта
- Отображение/скрытие схем
- Фильтрация настроек сохраняется для текущей сессии Visual Studio
Обзор 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.
И последнее
После запуска Visual Studio 2010, я внесу предложенные изменения и опубликую новую версию в блоге и в Code Gallery.
Надеюсь вам понравился расширение XAML редактора.
Источник – Karl on WPF
Компании из статьи
Microsoft Украина | Украинское подразделение компании Microsoft. |