Скрытые возможности Visual Studio (2005-2010)?

Visual Studio - такой массовый продукт, который даже после многих лет работы с ним я иногда натыкаюсь на новый/лучший способ делать что-то или вещи, о которых я даже не знал, были возможны.

Например -

  • Crtl + R, Ctrl + W, чтобы отобразить пробелы. Необходим для редактирования скриптов сборки Python.

  • В разделе "HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\8.0\Text Editor" Создайте строку под названием Путеводители со значением "RGB (255,0,0), 80", чтобы иметь красную строку в столбце 80 в текстовом редакторе.

Какие еще скрытые функции вы наткнулись?

Ответ 1

Сделайте выделение с нажатым ALT - выбирает квадрат текста вместо целых строк.

Ответ 2

Точка трассировка!

Поместите точку останова на строку кода. Поднимите окно "Точки останова" и щелкните правой кнопкой мыши на новой точке останова. Выберите "When Hit...". Отметив флажок "Печатать сообщение", Visual Studio будет распечатывать сообщение на отладочном выходе каждый раз, когда выполняется строка кода, а не (или также как) нарушение его. Вы также можете заставить его выполнить макрос при прохождении строки.

Ответ 3

Вы можете перетащить код в панель инструментов. Попробуйте!

Ответ 4

Щелкните идентификатор (имя класса, переменную и т.д.), затем нажмите F12 для "Перейти к определению". Я всегда удивляюсь, как много людей, которых я смотрю, используют более медленный метод щелчка правой кнопкой мыши → "Перейти к определению".

EDIT: Затем вы можете использовать Ctrl + -, чтобы вернуться обратно туда, где вы были.

Ответ 5

CTRL + SHIFT + V будет циклически перемещаться по вашему буферу, Visual Studio хранит историю копий.

Ответ 6

Сара Форд охватывает множество прекрасных советов: http://blogs.msdn.com/saraford/archive/tags/Visual+Studio+2008+Tip+of+the+Day/default.aspx

Но некоторые из моих фаворитов - это фрагменты кода, Ctrl + ., чтобы добавить using <Namespace> или сгенерировать заглушку метода. Я не могу жить без этого.

Посмотрите отличный список в плагине для Visual Studio 2008 С#: http://www.microsoft.com/downloadS/details.aspx?familyid=E5F902A8-5BB5-4CC6-907E-472809749973&displaylang=en

Ответ 7

CTRL-K, CTRL-D

Реформатный документ!
Это находится под клавишами VB, не уверен в С#

Ответ 8

Сколько раз вы отлаживаете массив в секундомере или окне просмотра, и только визуальная студия показывает вам первый элемент? Добавьте ", N" в конец определения, чтобы студия показала вам следующие N элементов. IE "this- > m_myArray" становится "this- > m_array, 5".

Ответ 9

Инкрементный поиск: при открытии исходного документа (CTRL + I) и введите слово, которое вы ищете, вы можете снова нажать (CTRL + I), чтобы увидеть слова, соответствующие вашему входу.

Ответ 10

Вы можете использовать следующие коды в окне просмотра.

@err - display last error
@err,hr - display last error as an HRESULT
@exception - display current exception

Ответ 11

  • Ctrl-K, Ctrl-C, чтобы прокомментировать блок текста с // в начале
  • Ctrl-K, Ctrl-U, чтобы раскомментировать блок текста с // в начале

Не могу жить без него!:)

Ответ 12

Отключение отладчика от перехода на тривиальные функции.

Когда вы переходите через код в отладчике, вы можете потратить много времени на вхождение и выключение функций, которые вам не особенно интересны, с такими именами, как GetID() или std::vector < > (), чтобы выберите пример С++. Вы можете использовать реестр, чтобы отладчик их игнорировал.

Для Visual Studio 2005 вам нужно перейти в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\8.0\NativeDE\StepOver и добавить строковые значения, содержащие регулярные выражения для каждой функции или набора функций, которые вы хотите исключить; например

std::vector. *::. *
TextBox:: GetID

Вы также можете переопределить их для отдельных исключений. Например, предположим, что вы хотели бы перейти в деструктор векторных классов:

std::vector. *::\~. * = StepInto

Сведения о других версиях Visual Studio можно найти в http://blogs.msdn.com/andypennell/archive/2004/02/06/69004.aspx

Ответ 13

Ctrl-F10: запустите курсор во время отладки. Взял меня, чтобы найти это, и я использую его все время;

Ctrl-E, Ctrl-D: применить стандартное форматирование (которое вы можете определить).

Ответ 14

ключевая функция TAB.

  • Если вы знаете имя ключа фрагмента, напишите и нажмите дважды Tab. например: Написать

    foreach

а затем дважды нажмите клавишу вкладки

foreach (object var in collection_to_loop)
{

}

2. Если вы пишете какое-либо событие, напишите здесь

        Button btn = new Button();
        btn.Click +=         

а затем дважды нажмите клавишу вкладки

private void Form1_Load(object sender, EventArgs e)
{
        Button btn = new Button();
        btn.Click += new EventHandler(btn_Click);     
}    
void btn_Click(object sender, EventArgs e)
{
        throw new Exception("The method or operation is not implemented.");
}

Функция btn_Click автоматически записывается

  1. в редакторе XAML, напишите любое событие. например:

MouseLeftButtonDown, затем нажмите вкладку
MouseLeftButtonDown="" затем снова нажмите вкладку MouseLeftButtonDown="Button_MouseLeftButtonDown" в созданной части кода Button_MouseLeftButtonDown.

Ответ 15

Сара Форд имеет этот рынок в поворотах.

http://blogs.msdn.com/saraford/default.aspx

Дополнительные советы и подсказки Visual Studio, чем вы можете встряхнуть палку.

Некоторые другие:

  • 3-месячные пробные версии Visual Studio 2005 и 2008 полностью функциональны и могут быть использоваться неограниченное время (навсегда), установив системные часы назад до открытия VS. Затем, когда VS открывается, снова установите системные тактовые импульсы, чтобы ваши даты не зависали.
  • Но это действительно пиратство, и я не могу его порекомендовать, особенно когда любой, у кого есть адрес .edu, может получить полностью функциональную версию Pro VS2008 через Microsoft Dreamspark.
  • Вы можете использовать Visual Studio для открытия сторонних исполняемых файлов и просматривать встроенные ресурсы (диалоги, строковые таблицы, изображения и т.д.), хранящиеся внутри.
  • Отладочные визуализаторы - это не совсем "скрытая" функция, но они несколько пренебрегают и очень полезны, поскольку в дополнение к использованию предоставленных визуализаторов вы можете сканируйте свой собственный для определенных наборов данных.
  • Отладчик "Установить указатель инструкций" или команду "Установить следующий отчет".
  • Условные точки останова (как отметил Киви Бастард).
  • Вы можете использовать Quickwatch и т.д., чтобы оценить не только значение переменной, но и выражения времени выполнения вокруг этой переменной.

Ответ 17

Высота раскрывающегося списка IntelliSense, например, отображая 50 элементов вместо значения по умолчанию, которое IMO смешно мало (8).

(Для этого просто измените размер раскрывающегося списка в следующий раз, когда вы его увидите, и Visual Studio запомнит выбранный вами размер при следующем открытии выпадающего списка.)

Ответ 18

Обнаружен сегодня:

Ctrl + .

Возвращает контекстное меню для рефакторинга (затем тот, который доступен через подчеркнутую последнюю букву класса/метода/свойства, который вы только что переименовали, - наведите указатель мыши на меню или "Ctrl" + "." )

Ответ 19

Многие люди не знают или используют отладчик в полной мере - I.E. просто используйте его, чтобы остановить код, но щелкните правой кнопкой мыши по красному кругу, и есть намного больше параметров, таких как условие прерывания, запуск кода при разрыве.

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

Ответ 20

Транспонирование линии, Shift-Alt-T
Сменяет две строки (текущую и следующую) и перемещает курсор на следующую строку. Мне это нравится. Я даже написал макрос, который снова изменил позицию на одну строку, выполнил перенос строки и изменил позицию линии, так что все выглядит так, будто я обмениваю текущую строку с предыдущей (транспонирование обратной линии).

Перестановка слов, Shift-Ctrl-T

Ответ 21

При разработке С++ Ctrl-F7 компилирует только текущий файл.

Ответ 22

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

Инструменты → Параметры → Проекты и решения → "Отслеживание активного элемента в обозревателе решений"

Изменить: Если это становится слишком раздражающим для вас, вы можете использовать макрос Dan Vanderboom, чтобы вызвать эту функцию по требованию нажатием клавиши.

(Примечание: взято из комментария ниже Джерри).

Ответ 23

Структура документа в FormsDesigner (CTRL + ALT + T)

Быстрое переименование, упорядочение и многое другое!

Ответ 24

Я не уверен, что он "скрыт", но не многие знают об этом - псевдорежиссеры. Пригодится при отладке, я все время нахожу @ERR, hr в окне просмотра.

Ответ 25

Ctrl-Minus, Ctrl-Plus, перемещается назад и вперед, где вы были недавно (только открытые файлы).

Ответ 26

Здесь что-то я узнал (для С#):

Вы можете переместить курсор на открывающуюся фигурную скобу из закрывающей фигурной скобки, нажав Ctrl +].

Я узнал об этом по теме SO, которая обманула его:

"Скрытые секреты" отладчика Visual Studio.NET

Ответ 27

Я не часто его использую, но люблю:

ctrl-alt + mouse select

Чтобы выбрать в прямоугольном блоке, чтобы "заблокировать" границы.

Как отмечено в комментариях,

alt + mouse select

Имеет простой прямоугольный блок.

Ответ 28

CTRL + Shift + U → выделенная область верхнего уровня. CTRL + U → В нижнем регистре выделенная секция Отлично подходит для того, чтобы мои SQL-выражения выглядели правильно, когда помещали их в строковые запросы.

Также полезно для кода, который вы нашли в Интернете, где ВСЕ В КАПС.

Ответ 29

Чтобы отобразить любой фрагмент данных в виде массива n-байтов, используйте следующий синтаксис в окне Visual Studio QuickWatch:

variable, n

Например, чтобы просмотреть переменную с именем foo в качестве 256-байтового массива, введите следующее выражение в окне QuickWatch:

foo, 256

Это особенно полезно при просмотре строк, которые не имеют нулевого конца, или данных, доступных только с помощью указателя. Вы можете использовать окно Visual Studio Memory для достижения аналогичного результата, но использование QuickWatch-окна часто более удобно для быстрой проверки.

Ответ 30

Средняя кнопка мыши Нажмите вкладку редактора, закрыв вкладку.