Подтвердить что ты не робот

Переключить переименование автозаполнения

Я вводил переключатель с перечислением в VS 2013, и все заявления о случаях заполнялись автоматически после того, как я закончил коммутатор. Теперь я не могу повторить это. Я не галлюцинировал, переключатель заполнил все варианты перечисления, по одному на случай, автоматически. Просмотрели документы MS для VS 2013 и не нашли его.

Я использую довольно много перечислений, и эта функция сэкономит мне массу времени, если я смогу найти то, что я сделал, чтобы вызвать ее. Может ли кто-нибудь помочь?

4b9b3361

Ответ 1

Использовать код snipped sw (вкладка) (вкладка)

Надеюсь, что это поможет,

Ответ 2

Примечание: Этот ответ применяется к выполнению автогенерации switch/enum при использовании Resharper.

Используя Visual Studio 2013 и Resharper 8.2, ранее упомянутые методы не работают. Здесь, как фактически заставить это поколение работать при использовании Resharper. Надеюсь, это спасет кого-то пятнадцать минут, которые я только что потратил на это.

Выполнение "sw (tab) (tab)" будет генерировать только следующее:

switch (nameOfEnumVariable)
{

}

Resharper может генерировать метки с помощью Alt + Enter (если ваш курсор стоит в инструкции switch) и выберите Создать метки переключателя, как показано на следующем снимке экрана:


Using the Resharper menu to fill in a switch statement


Результат выглядит следующим образом:


enter image description here


Ответ 3

Выбранный ответ в основном правильный, вам не нужен Resharper, как предложили другие (по крайней мере, не с Visual Studio Professional 2012+).

1) введите "sw", затем "[tab] [tab]" (как Marvin Smit said)

Какой (как jmblack сказал) будет генерировать что-то вроде:

  switch (switch_on)
  {
            default:
  }

но затем

2) вам нужно выбрать, какую вещь перечислить (switch_on будет выделен еще на этом этапе). Поэтому введите Enum (или вашу переменную типа перечисления), а switch_on - highlited и нажмите [Enter] [Enter].

(Я только что подтвердил, что это сработало на моей машине, работающей на VS2012, и я уверен, что это то же самое, что я сделал на моей другой машине под управлением VS2013, и я не тестировал другие версии VS (конечный/экспресс/др.))

Ответ 4

Визуальная студия Express 2012 - без Решарпер:

1) написать "переключатель"
2) дважды нажмите TAB, после чего вы увидите:

switch (switch_on)
{
        default:
}

(выделено switch_on)
3) повторно введите switch_on для вашего типа ENUM (не является переменной вашего типа enum, у меня это не сработало)
4) щелкните где-нибудь еще или нажмите Enter, теперь вы должны увидеть все заполненные элементы перечисления:

switch (YOUR_ENUM_TYPE)
{
    case YOUR_ENUM_TYPE.Item1:
        break;
    case YOUR_ENUM_TYPE.Item2:
        break;
    case YOUR_ENUM_TYPE.Item3:
        break;
    default:
        break;
}

5) не забудьте изменить вход вашего переключателя..

Ответ 5

По умолчанию фрагмент Visual Studion работает правильно. Вы должны ввести "sw", а затем нажать двойную "Tab".

Если вы используете Resharper, фрагмент не работает, потому что у параметра Resharper более высокий приоритет, по умолчанию. Итак, вы должны отключить фрагмент resharper.

Перейдите в "Resharper" → "Проводник шаблонов" → "С#", затем снимите флажок "Переключатель". Попробуйте "sw" + double "Tab"

Ответ 6

Я написал бесплатное расширение с открытым исходным кодом на основе Roslyn для Visual Studio 2015 и 2017, что не только позволяет заполнить регистр коммутатора для перечисления, но также может добавлять новые случаи, если значения enum (поля) были добавлены в определение типа перечисления или отсортированы по списку случаев по значению или имени.

Он доступен здесь: Генератор событий Enum

Вот как это использовать:

введите описание изображения здесь

Ответ 7

Я думаю, что вам нужно следующее:

sw(tab)(tab)enumVariableName(tab)(downArrow)

Я тестировал его и работал (по крайней мере, в VS2013).

Ответ 8

Привет, я просто столкнулся с той же проблемой, я только что узнал, что когда вы делаете:

switch(nameofvariable){
  default:
  break;
}

когда вы заполняете переменную, и вы дважды щелкаете по переменной по вашему выбору (перечисление), она даст вам все случаи

Ответ 9

VS 2019 + resharper создайте пустой переключатель с вашей переменной. Нажмите на первую фигурную скобку "{", затем нажмите alt + enter. Вы увидите Сгенерировать метки переключателей. Снимок экрана ниже:

Generate switch labels