Как включить ссылки в visual studio
Как я могу отображать ссылки поверх объявления метода?
Я искал его в свойствах Visual Studio, но не смог найти его.
4 ответа
В Visual Studio Professional или Enterprise Включите CodeLens, выполнив this-
Инструменты → Параметры → Текстовый редактор → Все языки → CodeLens
Это не доступно в версии для сообщества
@FADI1987 FADI1987 какой экземпляр Visual Studio вы используете? CodeLens недоступны для Community Edition.
@FADI1987 FADI1987 эта функция (CodeLens) недоступна для Community Edition. Но я ничего не могу сказать о ReSharper (я не знаю).
У меня есть Visual Studio Enterprise с Решарпер. Я вижу функцию линз кода По этой ссылке - линза кода недоступна в сообществе.
У меня есть VS 2017 Pro (проверил его в справке), и пока включена кодовая линза (некоторая информация, включая ссылки, появляется над объявлениями метода), опция кодовой линзы все еще отсутствует в этом меню.
CodeLens недоступен в выпусках Сообщества. Вам необходимо, чтобы Professional или выше включили его.
В VS2015 одним из способов "получить" CodeLens была установка SQL Server Developer Tools (SSDT), но я считаю, что это было исправлено в VS2017.
Тем не менее вы можете получить всю ссылку на метод, щелкнув правой кнопкой мыши на методе и "Найти все ссылки"
Не повезло с объективом Code в выпуске Community.
Нажмите Shift + F12 , чтобы найти все ссылки.
У меня Visual Studio Community 2017 (v 15.9.9), и у него уже есть функция линз кода по пути, объясненному @ISHIDA
С этого утра следующие VS и SQL-сервер (включая SSDT) работают в комбинированном режиме, чтобы получить CodeLens. Я не уверен, где еще я должен был, но предоставил файлы на MediaShare. SSMS-Setup-ENU-1653.exe и vs_community_ENU.exe . Надеюсь, это поможет всем, кто еще ищет.
Надеюсь, что это сработает - это соглашение между мной, продолжающим развиваться в сообществе VS2017, и возвращением к сообществу VS2015. Проблема в том, что я уже обновил свой проект до 2017 года с 2015 года, и у меня были проблемы с попыткой открыть проект снова в VS2015. Попробуйте эту комбинацию с предоставленными файлами @MaximusPeters и сообщите всем, работает ли она.
новая установка wndows 10, установленная SSMS 2017, обновление SSMS, затем VS2017 Community Edition. Неудачно. Все еще нет ссылок на дисплее. Может быть вернуться 2 VS2015 . или платить за профессионала!
Это не использует SSMS 2017 . он использует SMSS 2016, который имеет опцию в установщике для добавления SSDT . Это то, что вы пытаетесь сделать?
Перед написанием кода для внешних компонентов или подключенных служб необходимо включить в проект ссылки на них. По сути, ссылка — это запись в файле проекта, которая содержит сведения, необходимые Visual Studio для поиска компонента или службы.
Чтобы добавить ссылку, в обозревателе решений щелкните правой кнопкой мыши узел Ссылки или Зависимости и выберите команду Добавить ссылку. Вы также можете щелкнуть узел проекта правой кнопкой мыши и выбрать пункт Добавить > Ссылка. Дополнительные сведения см. в разделе Практическое руководство. Добавление и удаление ссылок.
Вы можете добавить ссылку на следующие типы компонентов и служб:
Приложения универсальной платформы Windows
другие сборки или библиотеки классов проектов в том же решении;
Ссылки на приложения UWP
Ссылки на проекты
Проекты универсальной платформы Windows (UWP) могут создавать ссылки на другие проекты UWP в решении либо на двоичные файлы или проекты, ориентированные на Windows 8.1, при условии, что эти проекты не используют интерфейсы API, которые являются устаревшими в Windows 10 и более поздних версиях. Более подробную информацию см. в разделе Перенос приложения из среды выполнения Windows 8 в UWP.
Если вы решили изменить целевую платформу проектов Windows 8.1 на Windows 10 или более поздней версии, ознакомьтесь со статьей Перенос, миграция и обновление проектов Visual Studio.
Справочник по пакетам SDK расширений
Если выяснится, что пакет SDK расширений, на который ссылается ваше приложение, не поддерживается, то вы должны выполнить следующие действия.
Посмотреть имя проекта, который вызывает ошибку. Платформа, для которой предназначен этот проект, указывается в скобках рядом с именем проекта. Например, MyProjectName (Windows 8.1) означает, что проект MyProjectName предназначен для платформы Windows 8.1.
Перейдите на сайт поставщика неподдерживаемого пакета SDK расширений и установите версию пакета SDK расширений с зависимостями, совместимыми с версией платформы, для которой предназначен ваш проект.
Если проект предназначен исключительно для Windows 10 и установленный в предыдущем шаге пакет SDK расширений имеет зависимость от пакета среды выполнения Microsoft Visual C++, то совместимой с Windows 10 версией этого пакета является v14.0, которая устанавливается вместе с Visual Studio.
Если установленный на предыдущем шаге пакет SDK расширений имеет зависимости от других пакетов SDK расширений, перейдите на сайты поставщиков, являющихся владельцами зависимостей, и установите версии этих зависимостей, совместимые с версией платформы, для которой предназначен ваш проект.
Перезапустите Visual Studio и откройте ваше приложение.
Щелкните правой кнопкой мыши узел Ссылки или Зависимости в проекте, который вызвал ошибку, и выберите команду Добавить ссылку.
Добавление ссылки во время разработки
При создании ссылки на сборку в проекте Visual Studio ищет сборку в следующих расположениях:
Каталог текущего проекта. (Можно найти эти сборки, используя вкладку Обзор .)
Другие каталоги проектов в одном решении. (Вы можете найти эти сборки на вкладке Проекты .)
- Все проекты содержат неявную ссылку на библиотеку mscorlib.
- Все проекты содержат неявную ссылку на System.Core , даже если System.Core была удалена из списка ссылок.
- Проекты Visual Basic содержат неявную ссылку на Microsoft.VisualBasic.
Ссылки на общие компоненты во время выполнения
По умолчанию для свойства CopyLocal задается значение False , если сборка или компонент находится в глобальном кэше сборок или является компонентом платформы. В противном случае задается значение True. Ссылки проектов на проекты всегда имеют значение True.
Ссылки проектов на проекты
Ссылки проектов на проекты — это ссылки на проекты, которые содержат сборки. Вы добавляете их на вкладке Проекты диалогового окна "Диспетчер ссылок". Visual Studio может найти сборку, если задан путь к проекту.
Ссылки на общий проект
В отличие от большинства других типов проектов, у общего проекта нет двоичных выходных данных. Вместо этого код компилируется в каждый проект, который ссылается на него. Общие проекты позволяют писать общий код, на который ссылается несколько различных проектов приложений. Код компилируется как часть каждого ссылающегося проекта и может включать директивы компилятора, которые помогают внедрить функции конкретной платформы в общую базу кода. Добавьте ссылку на общий проект на вкладке Общие проекты диалогового окна "Диспетчер ссылок".
Ссылки на файлы
Ссылки на файлы — это прямые ссылки на сборки вне контекста проекта Visual Studio. Они создаются на вкладке Обзор диспетчера ссылок. Ссылку на файл следует использовать в случае, если имеется лишь сборка или компонент, но не проект, который создает ее в качестве выходных данных.
Диалоговое окно "Диспетчер ссылок"
В левой части диалогового окна "Диспетчер ссылок" отображаются различные категории в зависимости от типа проекта:
Сборки с подгруппами Платформа и Расширения.
COM содержит список всех COM-компонентов, ссылки на которые можно добавить.
Проекты
Общие проекты
Windows с подгруппами Ядро и Расширения. Для просмотра ссылок в Windows SDK и пакетах SDK расширений можно использовать Обозреватель объектов.
Обзор с подгруппой последних ссылок.
При разработке проектов С++ элемент Обзор может не отображаться в диалоговом окне "Диспетчер ссылок".
Добавление ссылки
В обозревателе решений щелкните правой кнопкой мыши узел Ссылки или Зависимости и выберите команду Добавить ссылку. Вы также можете щелкнуть узел проекта правой кнопкой мыши и выбрать пункт Добавить > Ссылка.
Будет открыт Диспетчер ссылок со списком доступных ссылок по группам.
Укажите ссылки, которые требуется добавить, а затем нажмите кнопку ОК.
В обозревателе решений щелкните правой кнопкой мыши узел Ссылки или Зависимости, после чего выберите Добавить ссылку на проект или Добавить общую ссылку на проект, или Добавить ссылку COM. (Можно щелкнуть правой кнопкой мыши узел проекта и выбрать пункт Добавить из всплывающего меню, чтобы выбрать эти параметры.)
Будет открыт Диспетчер ссылок со списком доступных ссылок по группам.
Укажите ссылки, которые требуется добавить, а затем нажмите кнопку ОК.
Вкладка "Сборки"
При добавлении вручную ссылки на любое из пространств имен EnvDTE (EnvDTE, EnvDTE80, EnvDTE90, EnvDTE90a или EnvDTE100) установите в окне Свойства для свойства ссылки Внедрить типы взаимодействия значение False. Задание для этого свойства значения True может привести к проблемам сборки, так как некоторые свойства EnvDTE не допускают внедрения.
Все проекты классических приложений содержат неявную ссылку на библиотеку mscorlib. Проекты Visual Basic содержат неявную ссылку на Microsoft.VisualBasic. Все проекты содержат неявную ссылку на System.Core, даже если она была удалена из списка ссылок.
Если тип проекта не поддерживает сборки, эта вкладка не отображается в диалоговом окне "Диспетчер ссылок".
Вкладка Сборки состоит из двух подразделов.
В разделе Платформа перечислены все сборки, из которых состоит целевая платформа.
- HKEY_CURRENT_USER\SOFTWARE\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
- HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
- HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\[Target Framework Identifier]\v[Target Framework Version]\AssemblyFoldersEx\[UserComponentName]\@default=[Disk location of assemblies]
Некоторые компоненты в списке могут не отображаться в зависимости от версии платформы проекта. Это может произойти в следующих случаях.
Компонент, использующий новую версию платформы, не совместим с проектом, нацеленным на более раннюю версию платформы.
Сведения об изменении целевой версии платформы для проекта см. в статье Общие сведения о настройке для платформы.
Не следует добавлять ссылки на выходные файлы другого проекта того же решения, поскольку это может привести к ошибкам компиляции. Вместо этого следует создавать ссылки между проектами, используя вкладку Проекты диалогового окна Добавление ссылки. Это позволит упростить коллективную разработку за счет более эффективного управления библиотеками классов, создаваемыми в проектах. Дополнительные сведения см. в статье Устранение неполадок неработающих ссылок.
Чтобы отобразить сборку в диалоговом окне "Добавление ссылки"
Переместите или скопируйте сборку в одно из следующих расположений.
Каталог текущего проекта. (Можно найти эти сборки, используя вкладку Обзор .)
Другие каталоги проектов в одном решении. (Можно найти эти сборки, используя вкладку Проекты.)
Установите раздел реестра, определяющий положение отображаемых сборок.
Для 32-разрядной операционной системы добавьте один из следующих разделов реестра.
Для 64-разрядной операционной системы добавьте один из следующих разделов реестра в 32-разрядный куст реестра.
является каталогом сборок, которые требуется отображать в диалоговом окне Добавить ссылку, например C:\MyAssemblies.
Создание раздела реестра в узле HKEY_LOCAL_MACHINE позволяет всем пользователям видеть сборки в указанном расположении в диалоговом окне Добавить ссылку. Создание раздела реестра в узле HKEY_CURRENT_USER влияет только на настройки для текущего пользователя.
Вкладка "Проекты"
На вкладке Проекты указываются все совместимые проекты в текущем решении (в подразделе Решение).
Вкладка "Общие проекты"
Добавьте ссылку на общий проект на вкладке Общие проекты диалогового окна "Диспетчер ссылок". Общие проекты позволяют писать общий код, на который ссылается несколько различных проектов приложений.
Вкладка "Универсальная платформа Windows"
Вкладка Универсальная платформа Windows содержит список всех пакетов SDK, относящихся к платформам, на которых работают операционные системы Windows. Эта вкладка имеет две подгруппы: Ядро и Расширения.
Подгруппа "Ядро"
Проекты универсального приложения для Windows по умолчанию имеют ссылку на пакет SDK универсальной платформы Windows. Соответственно, в подгруппе Ядро в диспетчере ссылок не перечисляются никакие сборки из пакета SDK универсальной платформы Windows.
Подгруппа "Расширения"
В разделе Расширения перечислены пользовательские пакеты SDK, расширяющие целевую платформу Windows.
Пакет SDK — это коллекция файлов, которая обрабатывается Visual Studio как единый компонент. На вкладке Расширения пакеты SDK, относящиеся к проекту, из которого было открыто диалоговое окно "Диспетчер ссылок", указываются как отдельные записи. При добавлении в проект все содержимое SDK используется Visual Studio таким образом, что пользователю не нужно принимать никаких дополнительных мер для добавления содержимого SDK в IntelliSense, на панель элементов, в конструкторы, обозреватель объектов, средства сборки, развертывания, отладки и упаковки.
Сведения об отображении SDK на вкладке Расширения см. в статье Создание средств разработки программного обеспечения.
Если проект ссылается на пакет SDK, зависящий от другого пакета SDK, Visual Studio не будет использовать второй пакет SDK, пока вы вручную не зададите ссылку на него. Когда пользователь выбирает пакет SDK на вкладке Расширения, открывается диалоговое окно "Диспетчер ссылок", которое помогает определить зависимости SDK, перечислив их в области сведений.
Если тип проекта не поддерживает расширения, эта вкладка не отображается в диалоговом окне "Диспетчер ссылок".
Вкладка COM
Если тип проекта не поддерживает COM, эта вкладка не отображается в диалоговом окне "Диспетчер ссылок".
Обзор
Кнопка Обзор позволяет осуществлять поиск компонента в файловой системе.
Не следует добавлять ссылки на выходные файлы другого проекта того же решения, поскольку это может привести к ошибкам компиляции. Вместо этого следует создавать ссылки между проектами, используя вкладку Решение диалогового окна "Диспетчер ссылок". Это позволит упростить коллективную разработку за счет более эффективного управления библиотеками классов, создаваемыми в проектах. Дополнительные сведения см. в статье Устранение неполадок неработающих ссылок.
Невозможно добавить SDK в проект с помощью кнопки "Обзор". С помощью кнопки "Обзор" можно добавить в проект только файл (например, сборку или файл WinMD).
При указании ссылки на файл WinMD предполагается, что файлы .winmd, .dll и .pri находятся рядом. При указании ссылки на файл WinMD в следующих сценариях неполный набор файлов копируется в выходной каталог проекта и, следовательно, происходят сбои сборки и выполнения.
Компонент на базе машинного кода. Проект на базе машинного кода создает по одному файлу WinMD для каждого не связанного с другими набора пространств имен и по одному файлу DLL с реализацией. Файлы WinMD будут иметь разнородные имена. При указании ссылки на такой файл компонента на базе машинного кода MSBuild не определит, что файлы WinMD с разнородными именами относятся к одному компоненту. Следовательно, будут скопированы только файлы .dll и .winmd с одинаковыми именами, и возникнет ошибка времени выполнения. Чтобы обойти эту проблему, нужно создать пакет SDK расширения. Дополнительные сведения см. в статье Создание средств разработки программного обеспечения.
Использование элементов управления. Элемент управления XAML состоит по крайней мере из следующих файлов: .winmd, .dll, .pri, .xaml и .jpg. Когда проект будет собран, файлы ресурсов, связанные со ссылкой на файл, не будут скопированы в выходной каталог проекта, а будут скопированы только файлы .winmd, .dll и .pri. При этом в журнал будет занесена ошибка сборки, указывающая пользователю на отсутствующие ресурсы .xaml и .jpg. Чтобы сборка прошла успешно, пользователь должен вручную скопировать эти файлы ресурсов в выходную папку проекта для сборки и отладки (выполнения). Для решения этой проблемы создайте пакет SDK расширения, следуя инструкциям в статье Создание средств разработки программного обеспечения, или измените файл проекта, добавив в него следующее свойство:
При добавлении этого свойства сборка может выполняться медленнее.
Последние
Элементы Сборки, COM, Windows и Обзор поддерживают вкладку Последние, содержащую список компонентов, которые были недавно добавлены в проекты.
Поиск
Панель поиска в диалоговом окне "Диспетчер ссылок" работает с текущей активной вкладкой. Например, если пользователь вводит в области поиска запрос "System", когда открыта вкладка Решение, поиск не вернет результаты, если решение не содержит проекта, в имени которого есть слово "System".
До сих пор мы рассказывали о том, как начать работу с системой Visual Studio 2013 и как удобно настроить интегрированную систему разработки. Далее мы научим вас эффективно использовать некоторые встроенные команды, комбинации клавиш, а также вспомогательные инструментальные окна. Это поможет вам писать программы и проектировать формы.
Разработчики проводят значительное время, работая над текстами программ. Следовательно, очень важно уметь правильно скомпоновать код и перемещаться по его тексту. В системе Visual Studio 2013 реализован совершенно новый редактор кода, основанный на платформе визуализации WPF (Windows Presentation Foundation). Он предоставляет разработчикам множество новых возможностей в дополнение к тем, которые были унаследованы от предыдущих версий системы.
Компоновка окна редактора кода
Открывая исходный файл для редактирования, вы работаете с окном редактора кода, показанным на рисунке ниже. Основой этого окна является окно кода, в котором отображается текст программы:
Над окном кода расположены два раскрывающихся списка, которые помогут вам перемещаться по файлу кода. В первом из этих списков перечислены классы, содержащиеся в файле кода, а во втором — члены класса, выбранного из первого списка. Классы и их члены перечислены в алфавитном порядке. Это облегчает поиск метода или определения члена класса в файле.
Когда вы редактируете программу в окне редактора кода, строки кода, которые были модифицированы с момента открытия файла, сопровождаются метками в левом поле — желтыми для несохраненных изменений и зелеными для сохраненных.
Регионы кода
Использование частичных классов (т.е. классов, определение которых разбросано по нескольким файлам) позволяет в ходе проектирования записывать код в физически разные файлы, которые в совокупности представляют собой логически единый класс. Преимущество использования отдельных файлов заключается в эффективном группировании всех связанных друг с другом методов, например, методов, реализующих интерфейс. В то же время эта стратегия имеет недостаток: перемещение по коду требует постоянного переключения между его файлами.
Не обязательно разворачивать регион, чтобы увидеть код, который в нем записан. Просто переместите курсор мыши над регионом; и вы увидите код в контекстном окне указателя.
Сворачивание кода
Кроме регионов, которые необходимо определять вручную, в системе Visual Studio 2013 есть структуры кода (outlines), позволяющие автоматически сворачивать методы, комментарии и определения классов. Режим автоматического сворачивания включен по умолчанию. Если он был отключен, то его можно снова включить с помощью команды Edit --> Outlining --> Start Automatic Outlining.
На рисунке ниже показаны четыре сворачиваемых региона. Один из них называется Constructor, а остальные три автоматические структуры кода позволяют свернуть класс, XML-комментарии и метод конструктора (который был сжат). Автоматические структуры можно сворачивать и разворачивать так же, как и регионы, которые определяются вручную.
Меню Edit --> Outlining содержит большое количество команд, помогающих переключать режимы сворачивания, то сжимая весь файл до определений методов и свойств (Edit --> Outlining --> Collapse to Definitions), то разворачивая все свернутые фрагменты кода вновь (Edit --> Outlining --> Stop Outlining). Другой способ разворачивать и сворачивать регионы основан на использовании комбинации клавиш , . Эта комбинация позволяет переключаться между двумя режимами.
Форматирование кода
Режим Smart Indenting в системе Visual Studio практически всегда прекрасно справляется с автоматическим выравниваем кода по мере его ввода или вставки в окно редактора кода, но иногда встречаются плохо отформатированные фрагменты кода, которые трудно читать. Для того чтобы система Visual Studio переформатировала весь документ и установила позиции фигурных скобок и отступов строк, выберите команду Edit --> Advanced --> Format Document или нажмите комбинацию клавиш , . Для того чтобы переформатировать только что выделенный блок кода, выберите команду Edit --> Advanced --> Format Selection или нажмите комбинацию клавиш , .
Вы могли заметить, что команды Tabify/Untabify Selected Lines в меню Edit --> Advanced сильно отличаются от команды Format Selection. Эти команды превращают ведущие пробелы в символы табуляции, и наоборот, а не вычисляют заново отступы, как это делает команда Format Selection.
Перемещение вперед и назад по коду
Когда вы перемещаетесь по элементам интерфейса и между ними, система Visual Studio 2013 отслеживает вашу позицию почти так же, как веб-браузер отслеживает сайты, которые вы посетили. Используя команды Navigate Forward и Navigate Backward из меню View, вы сможете легко перемещаться вперед и назад между разными элементами проекта, в которые внесли изменения. Для перемещения назад используется комбинация клавиш , а для перемещения вперед - .
Дополнительные свойства редактора кода
Редактор кода в системе Visual Studio имеет очень много возможностей, которые трудно исчерпывающим образом описать в этой статье. Однако наиболее полезные из них мы приводим ниже.
Подсветка ссылок
Подсветка ссылок - интересное свойство системы Visual Studio, которое появилось в версии 2010. Система выделяет все вхождения имени элемента кода в области видимости (например, имени метода или свойства), на которое указывает курсор. Благодаря этому легче будет найти места, где это имя еще используется в коде. Вы сможете легко перемещаться между этими местами с помощью комбинации клавиш .
Укрупнение кода
С помощью комбинации можно увеличивать и уменьшать масштаб кода (по существу, увеличивая и уменьшая текст). Это свойство может оказаться особенно полезным, когда необходимо продемонстрировать код группе людей. В левом нижнем углу окна редактора кода есть раскрывающийся список, позволяющий выбрать заранее заданные уровни увеличения текста.
Сворачивание текста
Чтобы включить опцию сворачивания текста в окне редактора кода, выберите команду Tools --> Options, откройте узел Text Editor, выберите подузел All Languages и установите флажок Word Wrap. Можете также отобразить глиф стрелки возврата (return arrow) в том месте, где текст должен быть свернут, установив флажок Show Visual Glyphs for Word Wrap, расположенный ниже флажка Word Wrap.
Чтобы применить эти установки к текущему проекту, выберите команду Edit --> Advanced --> Word Wrap.
Номера строк
Для того чтобы отслеживать положение курсора в файле, полезно пронумеровать строки в окне редактора кода. Для того чтобы включить режим нумерации строк, выберите команду меню Tools --> Options, откройте узел Text Editor, выберите узел All Languages и установите флажок Numbers:
Разделение окна
Иногда нужно разделить один и тот же файл кода на две части и просматривать одновременно в разных окнах. Можете разделить активное окно редактора на верхнюю и нижнюю части с помощью линии разбивки (splitter bar). Эти окна можно прокручивать независимо друг от друга и отображать в них содержимое одного и того же файла в одно и то же время.
Для того чтобы разделить окно редактора кода, выберите команду Split из меню Window. В качестве альтернативы можно перетащить метку манипулятора (расположенную прямо над панелью вертикальной прокрутки), в позицию, где должна располагаться линия разбивки.
Чтобы настроить размеры каждого окна, достаточно передвинуть линию разбивки вверх или вниз. Удалить линию разбивки просто: дважды щелкните на ней или выберите команду Remove Split из меню Window.
Свободное перемещение окон редактора кода
В версии Visual Studio 2010 появилось новшество, которого долго ожидали программисты, работающие с несколькими дисплеями, - возможность "освобождать" окна редактора кода (и инструментальные окна) и перемещать их за пределы главного окна системы Visual Studio (как показано на рисунке ниже) и даже на другой дисплей. Это позволяет одновременно работать с несколькими окнами редактора кода, расположенными на разных дисплеях. Для того чтобы освободить окно, сначала убедитесь, что оно находится в фокусе, а затем выберите команду Float из окна Window. В качестве альтернативы можно щелкнуть правой кнопкой мыши на заголовке окна и выбрать команду Float из контекстного меню или щелкнуть и перетащить закладку для этого окна (при этом окно освобождается) и перетащить его в то место, где вы хотите его расположить.
Когда разделение окна редактора кода на две части для одновременного просмотра разных фрагментов одного и того же файла (см. предыдущий раздел) оказывается неудобным, можно вместо этого использовать плавающее окно, разместив его, например, на другом дисплее (если вы работаете с несколькими дисплеями). Для этого можно воспользоваться специальным трюком (поскольку двойной щелчок мышью на файле в окне Solution Explorer просто активизирует существующее окно редактора кода для данного файла) - выбрать команду New Window в меню Window. Эта команда откроет просматриваемый в данный момент файл в новом окне, которое можно сделать свободным и разместить в любом месте.
Создание групп закладок
Если у вас нет нескольких мониторов, то все равно есть возможность открыть одновременно несколько окон редактора кода. Для этого следует создать группы закладок и создать из них мозаику, чтобы отобразить одновременно. Каждая закладка окна редактора кода в этой группе отображается как отдельный элемент мозаики. Таким образом, можно создать несколько групп закладок. Их количество ограничено лишь размерами экрана, на котором они должны размещаться. Элементы мозаики можно размещать как вертикально, так и горизонтально, правда, применить эти два способа одновременно невозможно.
Для того чтобы начать этот процесс, откройте в окне редактора кода несколько закладок. Убедитесь, что закладка окна редактирования кода находится в фокусе, а затем выберите команду Window --> New Horizontal Tab Group или Window --> New Vertical Tab Group из открывшегося меню. В результате будет создана новая группа закладок и мозаика для них:
В качестве альтернативы можно просто перетащить закладку вниз или за существующую и прикрепить ее в этой позиции, получив тот же самый результат. Можно также перетаскивать закладки из одной группы закладок в другую, используя команды Window --> Move to Next Tab Group и Window --> Move to Previous Tab Group. Эти команды доступны также в меню, которое открывается после щелчка правой кнопкой мыши на закладке. Для того чтобы восстановить пользовательский интерфейс, имеющий только одну группу закладок, переместите закладки из новой группы (или групп) закладок назад в исходное место, и мозаика исчезнет.
Несколько панелей Solution Explorer
Если вы работаете на нескольких мониторах, то в версиях Visual Studio 2008 и ниже вы могли заметить, что нельзя открыть несколько панелей Solution Explorer. В Visual Studio 2013 этого ограничения не существует. Щелкните на одном из элементов в окне Solution Explorer правой кнопкой мыши и выберите в контекстном меню команду New Solution Explorer view. При выборе этой команды откроется новое окно Solution Explorer, которое будет содержать выбранный элемент. Это очень удобно при работе на нескольких мониторах.
Дополнительные возможности
Для того чтобы достичь действительно высокой производительности труда, полезно знать о многочисленных скрытых возможностях редактора кода, которые позволяют сэкономить массу времени. Рассмотрим некоторые из наиболее полезных команд, которые скрыты в редакторе кода.
"Закомментирование" и "раскомментирование" блока кода
В системе Visual Studio есть простое средство для "закомментирования" и "раскомментирования" блоков. Для этого следует выделить блок, затем выбрать команду Edft --> Advanced --> Comment Selection, чтобы "закомментировать" его, или Edit --> Advanced --> Uncomment Selection, чтобы "раскомментировать" его. Проще всего выбрать эти команды (скорее всего, именно их вы будете чаще всего использовать) с помощью комбинаций клавиш. Нажмите комбинации клавиш , , чтобы "закомментировать" блок кода, и , - чтобы "раскомментировать" его. Еще одним простым средством для доступа к этим командам является инструментальная панель Text Editor.
Выделение блока
Выделение блока, которое называют также выделением окна (box selection), столбца (column selection), прямоугольника (rectangle) или вертикального текста (vertical text selection), как показано на рисунке ниже, подразумевает выделение текстового блока, а не строк (процедура, которая называется выделением потока (stream selection)). Для того чтобы отметить текстовый блок, нажмите клавишу и не отпускайте ее, пока выделяете текст мышью, или используйте комбинацию клавиш . Это свойство может оказаться полезным, когда необходимо удалить часть вертикально выровненного кода (например, префикс в объявлениях переменных):
Многострочное редактирование
Многострочное редактирование - это новое свойство, появившееся в системе Visual Studio 2010 и расширяющее возможность выделения блоков. В предыдущих версиях системы после выделения вертикального текстового блока вы могли только удалять, вырезать или копировать блок. Теперь в системе Visual Studio после выделения вертикального текстового блока можно в каждой строке набрать текст, который заменит выделенный фрагмент. Это удобно, например, когда требуется заменить уровень доступа к группе переменных с private на protected.
Можно также вставить текст одновременно в несколько строк, создав блок с нулевой шириной и просто начав печатать.
Кольцевой буфер обмена
Система Visual Studio отслеживает последние двадцать фрагментов текста, которые были скопированы или вырезаны в буфер обмена. Для того чтобы вставить текст, который был ранее скопирован в буфер обмена, но был перезаписан, вместо обычной комбинации , предназначенной для вставки, можно использовать комбинацию . Нажав клавишу и удерживая клавиши , можно выполнять циклы просмотра элементов буфера обмена.
Полноэкранный режим
Можете максимизировать представление кода, подлежащего редактированию, выбрав команду View --> Full Screen или нажав комбинацию клавиш , чтобы увеличить до максимума окно редактора кода, скрыв другие инструментальные окна и панели. Для того чтобы вернуться в обычный режим, снова нажмите комбинацию клавиш или щелкните на кнопке переключения Full Screen, добавленной в конце панели меню.
Переход к определению
Для того чтобы быстро перейти к определению класса, метода или члена, расположенного ниже курсора, щелкните правой кнопкой мыши и выберите команду Go То Definition или нажмите клавишу .
Поиск всех ссылок
В системе Visual Studio 2013 есть возможность найти точку вызова метода или ссылки на свойство, щелкнув правой кнопкой мыши на его определении и выбрав команду Find All References в контекстном меню или поместив курсор на определение метода и нажав комбинацию клавиш . Эти команды открывают инструментальное окно Find Symbol Results, содержащее позиции, в которых существуют ссылки на указанный метод или свойство. Теперь можно дважды щелкнуть на ссылке в окне результатов, чтобы переместиться на искомую позицию в окне редактирования кода.
Это свойство несколько устарело после появления нового окна Call Hierarchy, которое будет рассмотрено позже. Однако оно по-прежнему позволяет быстро находить используемый метод без перемещения по окну Call Hierarchy.
Закладка References (только для языка Visual Basic)
Одной из особенностей этой закладки, предназначенной для разработчиков программ на языке Visual Basic, является кнопка Unused References, позволяющая выполнять поиск ссылок, которые можно удалить. Кроме того, можно добавлять пути к ссылкам (reference path), что дает возможность включать все сборки, расположенные в данном месте.
Ссылки на внешние сборки могут быть ссылками на файл или проект. Ссылка на файл - это прямая ссылка на отдельную сборку. Такие ссылки создаются с помощью закладки Browse в диалоговом окне Add Reference. Ссылка на проект - это ссылка на отдельный проект в решении. Все сборки, создающиеся проектом, динамически добавляются как ссылки. Ссылки на проекты создаются с помощью закладки Project в диалоговом окне Add Reference.
Преимущество ссылки на проект заключается в том, что она создает зависимость между проектами в системе сборки. Зависимый проект может быть собран заново, если он был изменен с момента последней сборки проекта, который на него ссылается. Ссылка на файл не создает зависимости между сборками, поэтому возможна ситуация, когда проект, ссылающийся на файл, будет собран, а зависимый проект - нет. Однако это может создать проблемы в ссылающемся проекте, который ожидает другую версию зависимого проекта.
Закладка Resources
Ресурсы проекта можно добавлять и удалять с помощью закладки Resources, показанной на рисунке ниже. В приведенном примере в приложение были добавлены две пиктограммы. Ресурсами могут быть изображения, текст, файлы и другие сериализуемые классы.
Этот интерфейс существенно облегчает работу с файлами ресурсов во время проектирования.
Читайте также: