这是什么意思:Loaded + = MyWindow_Loaded;

时间:2010-04-12 12:40:54

标签: c# .net

我有一个vb.net背景并试图学习c#语法

4 个答案:

答案 0 :(得分:11)

这与说法相同:

AddHandler Me.Loaded, AddressOf(MyWindow_Loaded)

虽然在你的代码中,它可能是方法声明的一部分,如下所示:

Private Sub MyWindowLoaded(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Loaded
    ...
End Sub

无论哪种方式,这意味着您将名为MyWindow_Loaded的函数附加到Loaded event

答案 1 :(得分:3)

虽然你可以很容易地理解它应该做什么,但语法可能有点令人费解。在事件和方法之间进行添加并没有多大意义,但效果当然是事件处理程序附加到事件中。

事件的+ =运算符将事件处理程序附加到事件。但是,编译器可以使用此快捷方式将方法转换为委托。实际生成的代码(您也可以使用)类似于:

Loaded += new LoadedEventHandler(MyWindow_Loaded);

因此,代码的作用是为方法创建一个事件处理程序委托,并将其附加到事件中。委托的类型取决于事件的期望。

答案 2 :(得分:2)

它将方法MyWindow_Loaded附加到事件Loaded。请see this了解更多信息。

答案 3 :(得分:2)

这意味着您正在订阅活动Loaded,并且您的班级中的事件监听器是MyWindow_Loaded方法。