Можно ли изменить автоматически сгенерированный код обработчика событий в Visual Studio? - PullRequest
9 голосов
/ 27 июня 2011

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

void HandlerName(object sender, HandlerEventArgs e) {
    throw new NotImplementedException();
}

Я хотел бы изменить это на следующее:

private void HandlerName(object sender, HandlerEventArgs args) {
    throw new NotImplementedException();
}

А именно, это аргумент args, который я всегда меняю.

ОБНОВЛЕНИЕ : В дополнение к этому, в соответствии с нашей политикой мы также включаем сюда комментарии для частных пользователей, поэтому еще один вариант использования для моего требования также заключается в создании комментария по умолчанию.

ОБНОВЛЕНИЕ 2 : теперь я убираю причину желания переименовать e в args из-за свидетельства нестандартного соглашения об именах, однако я все же хотел бы переопределить шаблон, если это возможно для явного модификатора доступа и комментариев по умолчанию.

Ответы [ 3 ]

1 голос
/ 27 июня 2011

Я думаю, e происходит от подписи делегата (delegate void HandlerEventHandler(object sender, HandlerEventArgs e)), поэтому вы не можете изменить его, не изменив также подпись делегата ...

0 голосов
/ 20 ноября 2015

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

Это очень полезногенерировать более чистое имя обработчика событий.Как вы увидите, вместо создания чего-то вроде txtName_LostFocus расширение предложит вам метод с именем, подобным этому: OnNameLostFocus.

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

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

Я постараюсь найти решение и сообщу вам о моем прогрессе.

ОБНОВЛЕНИЕ: Вы можететакже используйте Resharper, который автоматически добавит явный модификатор для вас, используя механизм очистки.

0 голосов
/ 27 июня 2011

Вы хотите сказать, что хотите изменить автоматически сгенерированный код при создании обработчика событий?

Мой ответ - нет, но я не совсем уверен, зачем вам это нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...