2011-02-15 112 views
0

谁能澄清我以下的区别:附着事件处理程序

1.

{ 
    // ... 
    Button b = new Button(); 
    b.Click += new RoutedEventHandler(b_Click); 
} 

void b_Click(object sender, RoutedEventArgs e) { //do stuff...... } 

2.

{ 
    // ... 
    Button b = new Button(); 
    b.Click += a_Click; 
} 

void a_Click(object sender, RoutedEventArgs e) { //do stuff...... } 
+0

[在C#中附加事件处理程序的两种不同方式中是否存在实际差异?](http://stackoverflow.com/questions/214346/is-there-an-actual-difference-in- (2)不同的附加事件处理程序) – 2011-02-15 11:24:56

回答

4
b.Click += a_Click; 

是简单的简写写作b.Click += new RoutedEventHandler(b_Click);

如果编写简短的表单,幕后编译器将生成长版本。换句话说,无论您选择哪种方式,执行的代码在IL级别都是相同的。

这是一个个人喜好,你希望代码如何看待程序员。