在自动生成用于绑定到事件的代码时,更改Visual Studio中的默认行为

时间:2010-09-15 11:36:11

标签: c# .net visual-studio

通常当我订阅一个事件时,我使用Visual Studio内置函数来生成该方法。因此,如果我想在编写+=后将单击的事件绑定到按钮,则单击选项卡一次以在+=之后生成代码,然后再次选项卡以创建与此事件关联的空方法。

因此,对于按钮点击事件,我最终会得到类似的结果:

button.Clicked += new EventHandler(button_Clicked);

void button_Clicked(object sender, EventArgs e) {
  throw new NotImplementedException();
}

由于我更喜欢​​用于绑定事件处理程序的较短语法,所以我总是返回自动生成的行,并将其更改为如下所示:

button.Clicked += button_Clicked;

我的问题很简单。有没有办法让VS自动更喜欢这种语法而不是默认语法,所以我不必手动每次都改变它。

这适用于VS2008和VS2010

3 个答案:

答案 0 :(得分:2)

不,这不是你无法控制的。

它们更容易保持旧样式,因此无论哪个版本的C#被定位,它总是有效。否则,他们必须使生成的代码以C#版本为条件,我可以想象这只是值得付出的工作。遗憾的是,此代码生成不可扩展,因此您需要自己手动修改代码。

您可以尝试第三方附加功能,例如ReSharper产品,以通过访问对象模式并修改它来实现许多很酷的功能,从而获得额外的工作效率。

答案 1 :(得分:1)

据我所知,没有。

我确定我已经在权威的地方读到了它,但我现在还记得不知道在哪里

答案 2 :(得分:1)

这也让我很烦。但是我使用ReSharper,它在创建事件处理程序时提供了一些选择,例如创建新方法,添加lambda或匿名方法,或使用任何具有适当签名的现有方法。

此外,R#将突出显示任何冗余代码,并允许您从单个站点或整个项目/解决方案轻松删除它。