Как остановить Visual Studio от вставки "объекта" при вводе "new {"
При редактировании исходного файла С# я печатаю
new {
Visual Studio автоматически корректирует его на
new object{
Есть ли способ остановить это поведение?
Ответ 1
Вы можете настроить, какие символы набираются, фиксировать текущий выбор intellisense. В Инструменты | Варианты | Текстовый редактор | С# | IntelliSense.
Удалить "{" и убедиться, что зафиксированная пробел не проверена.
NB. Эта опция больше не присутствует в Visual Studio 2015.
Ответ 2
Я столкнулся с этой проблемой, и ответы выше не помогли мне. В моем случае это было вызвано Resharper, и я обратился к нему, перейдя к Resharper → Options → Environment → Intellisense → Completing Characters и добавив открывающий фигурный фигурный скобок "{" на Список "Не заполнять" для С#.
Ответ 3
Что вы печатаете перед new {?
Я только что попробовал, и он автоматически завершает работу с типом объекта, поэтому, если я напечатаю:
Button test = new {
он становится:
Button test = new Button{
Но если я напечатаю:
var test = new {
он оставляет его в покое.
Я никак не настраивал VS2008-установку.
Ответ 4
Вы проверили параметры автозаполнения для ReSharper? Я просто попробовал это в новом (пустом) классе с настройками по умолчанию ReSharper и не смог его дублировать. Какую версию студии /ReSharper вы используете?
Ответ 5
Сначала попробуйте ввести левую скобку, затем вернитесь и введите новый. VS2008 делает это для меня (без ReSharper), и, если я помню, это то, что я делаю. Это меньше печатает, чем удаляет вставленный "объект".