Просмотр структуры кода
Существует возможность просматривать объекты и элементы в проектах Visual Studio, а также объекты и элементы в компонентах .NET Framework, компонентах COM, в динамических библиотеках (DLL) и библиотеках типов (TLB).
В следующих разделах этого документа описаны различные окна структуры кода.
Представление классов (Visual Basic, c#, C++)
Иерархия вызовов (Visual Basic, c#, C++)
Обозреватель объектов
Окно определения кода (c#, C++)
Можно также использовать Обозреватель решений чтобы просмотреть типы и члены в проектах, выполняют поиск символов, просматривающие иерархия вызовов метода поиска ссылки на символы и более, не переключаясь между несколькими окнами инструментов, перечисленным ранее.
Примечание |
---|
Выпуск Visual Studio и используемые параметры могут повлиять на функции в интегрированной среде разработки.Они могут отличаться от описанных в этом разделе. |
Представление классов (Visual Basic, c#, C++)
Представление классов показано, как часть Обозреватель решений так же, как в отдельном окне.Окно Представление классов отображает элементы приложения.Верхней панели отображаются пространства имен, типы, интерфейсы, перечисления и классы, а нижняя - панель отображает элементы, принадлежащие к типу, выбранному в верхней области.С помощью этого окна можно перемещать к определению элемента в исходном коде (или в Обозреватель объектов если элемент определен вне решения).
Не следует компилировать проект просмотреть его элементы в Представление классов.Окно обновляется по мере внесения изменений кода в проекте.
Можно добавить код в проект, выбрав узел проекта и выберите кнопку Добавить, чтобы открыть диалоговое окно Добавление нового элемента.Добавляется код в отдельном файле.
Если проект вернут в систему управления исходным кодом, то каждый элемент Представление классов отображает значок, указывающий состояние файла исходного кода.Общие команды управления исходным кодом, как Извлечь, Вернуть и Получить последнюю версию также доступны в контекстном меню для элемента.
Панель инструментов "Представление классов"
Панель инструментов представление классов содержит следующие команды.
Создать папку |
Создается виртуальная папка или вложенной папки, в которой можно упорядочить част-используемые элементы.Они сохраняются в активном файле решения (suo).После переименования или удаления элемент в коде, он может появиться в виртуальной папке, как узел ошибки.Чтобы устранить эту проблему, удалите узел ошибки.При переименовании элемента, то можно переместить его в иерархии проекта в папке. |
Назад |
С помощью данной кнопки можно перейти к ранее выбранному элементу. |
Далее |
Переходит к следующему выбранному элементу. |
Просмотр схемы классов (проектов управляемого кода) |
Становится доступной в том случае, если выбрано пространство имен или типа в Представление классов.Если пространство имен и схема классов показывает все типы внутри него.Если тип установлен, схема классов показывает только этот тип. |
Параметры представления классов
Кнопка Окно классов: параметры на панели инструментов имеет следующие параметры.
Показать базовые типы |
Базовые типы отображаются. |
Показать производные типы |
Производные типы отображаются. |
Показать скрытые типы и члены |
Скрытые типы и члены (не предназначенные для использования клиентами) отображаются в свете - сером текста. |
Показать открытые члены |
Открытые члены отображаются. |
Показать защищенные члены |
Защищенные члены отображаются. |
Показать закрытые члены |
Закрытые члены отображаются. |
Показать прочие члены |
Другие типы элементов отображаются, включая внутренние (или друзей в Visual Basic) элементы. |
Показать наследуемые члены |
Унаследованные элементы отображаются. |
Показать методы расширения |
Методы расширения отображаются. |
Контекстное меню представления классов
Контекстное меню в Представление классов может содержать следующие команды в зависимости от выбранного типа проекта.
Перейти к определению |
Находит определение элемента в исходном коде или в Обозреватель объектов, если элемент не указан в открытом проекте. |
Просмотреть определение |
Отображает выбранный элемент в Обозреватель объектов. |
Найти все ссылки |
Находит в настоящее время элемент выбранного объекта, а результаты выводятся в окно Результаты поиска. |
Фильтр, который будет вводить (только управляемый код) |
Отображает только выбранные типа или пространства имен.Можно удалить фильтр с помощью кнопки Очистить поле "Найти" (x) рядом с полем Найти. |
Копировать |
Копирует полное имя элемента. |
Сортировать по алфавиту |
Типы и элементы списков в алфавитном порядке по имени. |
Сортировать по типу членов |
Типы списков и элементы в порядке типом (то, что классов предшествуют интерфейсы, интерфейсы предшествуют делегаты и методы предшествуют свойства). |
Сортировать по доступу членов |
Типы и элементы списков в порядке доступом типа, как открытый или закрытый. |
Группа типом элемента |
Типы и участники сортировки на группы по типу объекта. |
Код Перейти к объявлению (C++) |
Показано объявление типа или члена в исходном коде, если оно известно. |
Перейти к определению |
Отображает определение типа или члена в исходном коде, если оно известно. |
Перейти по ссылке |
Отображает ссылку на тип или член в исходном коде, если оно известно. |
Иерархия вызовов "Вид" |
Отображает выбранный метод в окне Иерархия вызовов. |
Иерархия вызовов (Visual Basic, c#, C++)
Окно Иерархия вызовов указывает, где данный метод (или конструктор) или свойство называются и перечислены методы, вызываемые из этого метода.Можно просматривать несколько уровней графа вызовов, вызывающий/вызываемый " отображаются связи между методов в заданной области.
Можно отобразить окно Иерархия вызовов, выбрав свойство или метод (или конструктор), а затем выбрать Просмотр иерархии классов в контекстном меню.Отображение должен напоминать следующее изображение.
Окно "Иерархия вызовов"
С помощью раскрывающегося списка на панели инструментов, можно указать область иерархии. текущий проект или решение, текущий документ.
Панель основы отображает вызовы и из метода и панель Вызвать сайты показывает местоположение выбранного вызова.Для элементов, которые фактически являются абстрактными или узел Переопределяет имя метода.Для членов интерфейса появляется узел Реализует имя_метода.
Окно Иерархия вызовов не находит ссылки на группы метода, которые включают размещения, где метод добавляется в качестве обработчика событий или присвоенный делегату.Чтобы найти эти ссылки, используйте команду Найти все ссылки.
Контекстное меню в окне Иерархия вызовов содержит следующие команды.
Добавить как новый корневой элемент |
Добавляет выбранный узел как новый корневой узел. |
Удалить корневой объект |
Удаляет выбранный корневой узел из области представления в виде дерева. |
Перейти к определению |
Переходит к исходному определению метода. |
Найти все ссылки |
Находит в проекте все ссылки на выбранный метод. |
Копировать |
Копирует выбранный узел (но не ее sub-узлы). |
Обновить |
Обновляет сведения. |
Обозреватель объектов
Обозреватель объектов отображает описания кода в своих проектах.
Можно фильтровать, что нужно просмотреть в Обозреватель объектов.С помощью раскрывающегося списка в верхней части окна можно выбрать один из следующих параметров:
Любой платформы .NET Framework
Silverlight
Активное решение
Настраиваемый набор компонентов
Пользовательские компоненты могут включать исполняемые файлы управляемого кода сборки библиотек, библиотеки типов и файлы .ocx.Невозможно добавить компоненты пользовательского C++.Пользовательские параметры сохраняются в каталоге приложения пользователя Visual Studio, %APPDATA% \ roaming \ Microsoft \ VisualStudio \ 11,0 \ ObjBrowEX.dat.
Левая панель Обозреватель объектов отображает физические контейнеры в качестве платформы .NET Framework и компонентов COM.Можно развернуть узлы контейнера для отображения пространств имен, которые они содержат, а затем разверните узел пространства имен для отображения типов, которые они содержат.При выборе типа, ее члены (свойства и методы), перечислены в правой области.В нижней правой панели отображаются подробные сведения о выбранном элементе.
Можно выполнить поиск конкретного элемента с помощью окна Поиск в верхней части окна.При поиске регистр не учитывается.Результаты поиска отображаются в левой панели.Чтобы отменить поиск, нажмите кнопку Очистить результаты поиска (x) рядом с полем Поиск.
Обозреватель объектов отслеживает выделений сделанные, и можно перемещаться среди своих операций выделения с помощью кнопок Вперед и Назад на панели инструментов.
Можно использовать Обозреватель объектов чтобы добавить ссылку на сборку к открытому решению, выбрав элемент (сборки, пространства имен, типа или члена) и Добавить ссылку помощью кнопки на панели инструментов.
Параметры обозревателя объектов
С помощью кнопки Параметры обозревателя объектов на панели инструментов, можно указать одно из следующих представлений.
Просмотреть пространства имен |
Указывает пространства имен, а не физические контейнеры, в левой панели.Если пространства имен хранятся в нескольких физических контейнерах, то производится их объединение. |
Просмотреть контейнеры |
Отображает физические контейнеров, а не пространства имен в левой панели.Пространства имен вид и Просмотреть контейнеры взаимоисключающие параметры. |
Показать базовые типы |
Отображает базовые типы. |
Показать производные типы |
Указывает производные типы. |
Показать скрытые типы и члены |
Скрыть дисплеями типы и элементы (не предназначенные для использования клиентами) в свете - сером текста. |
Показать открытые члены |
Указывает открытые элементы. |
Показать защищенные члены |
Отображает защищенные члены. |
Показать закрытые члены |
Указывает закрытые элементы. |
Показать прочие члены |
Отображает другие типы элементов, в том числе внутренние (или friend в Visual Basic) элементы. |
Показать наследуемые члены |
Отображает унаследовали элементов. |
Показать методы расширения |
Показывает методы расширения. |
Команды контекстного меню обозревателя объектов
Контекстное меню в Обозреватель объектов может содержать следующие команды в зависимости от выбранного типа элемента.
Просмотреть определение |
Показывает основной узел для выбранного элемента. |
Найти все ссылки |
Находит в настоящее время элемент выбранного объекта, а результаты выводятся в окно Результаты поиска. |
Фильтрация по типу |
Отображает только выбранные типа или пространства имен.Можно удалить фильтр с помощью кнопки Очистить результаты поиска. |
Копировать |
Копирует полное имя элемента. |
Удалить |
Если область пользовательский набор компонентов, удаляет выбранный компонента из области. |
Сортировать по алфавиту |
Типы и элементы списков в алфавитном порядке по имени. |
Сортировать по типу объектов |
Типы списков и элементы в порядке типом (то, что классов предшествуют интерфейсы, интерфейсы предшествуют делегаты и методы предшествуют свойства). |
Сортировать по доступу объектов |
Типы и элементы списков в порядке доступом типа, как открытый или закрытый. |
Группировать по типу объектов |
Типы и участники сортировки на группы по типу объекта. |
Перейти к объявлению (проекты C++) |
Показано объявление типа или члена в исходном коде, если оно известно. |
Перейти к определению |
Отображает определение типа или члена в исходном коде, если оно известно. |
Перейти по ссылке |
Отображает ссылку на тип или член в исходном коде, если оно известно. |
Иерархия вызовов "Вид" |
Отображает выбранный метод в окне Иерархия вызовов. |
Окно определения кода (c#, C++)
Окно Определение кода, отображается определение выбранного типа или члена в активном проекте.Тип или элемент могут быть выбраны в редакторе кода или в окне представление кода.
Хотя это поле доступно только для чтения, можно установить точки останова или закладки.Чтобы изменить определение Изменить определение отображается, выберите в контекстном меню.Это открывает файл источника в редакторе кода и переместит точку вставки на линии когда определение.
Контекстное меню определения кода
Контекстное меню в окне Определение кода может содержать следующие команды в зависимости от языка программирования.
Создать модульные тесты |
Создает модульные тесты для выбранного элемента. |
Создание схемы последовательностей |
При выборе метод создает схему последовательностей. |
Создать частный метод доступа |
Если модульный тест присутствуют в решении, то создается метод, тест использует для получения доступа к коду. |
Перейти к определению |
Находит определение (или, для определения разделяемых классов) и отображает их в окне Результаты поиска. |
Найти все ссылки |
Находит ссылки к типу или члену в решении. |
Иерархия вызовов "Вид" |
Указывает метод в окне Иерархия вызовов. |
Показать вызывающие тесты |
Если модульные тесты в проекте, указывающее тесты, вызывающие выбранный код. |
Выполнить вызывающий тестов |
Если модульные тесты в проекте, то выполнить тесты для выбранного кода. |
Точка останова |
Добавляет точку останова или точка трассировки). |
Выполнять до текущей позиции |
Запускает программу в режиме отладки в местоположение курсора. |
Копировать |
Копирует выбранной линии. |
Структуризация |
Стандартные структурирование команды. |
Изменить определение |
Перемещает точку вставки к определению в окне кода. |
Выберите кодирование |
Открывает окно Кодировка, что позволяет задать кодирование для файла. |
Окно "Структура документа"
Можно использовать окно Структура документа совместно с представлениями конструктора, как конструктор для страницы XAML или конструктор формы windows или со страницами HTML.Это окно отображает элементы в представлении в виде дерева для просмотра логической структуры формы или страницы и найти элементы управления, глубоко внедренных или скрыты.