Emr*_*DUR 3 c# vb.net events timer handles
我尝试将 Visual Basic (VB) 项目转换为 C#,但我不知道如何更改下面的一些代码,
在窗口中形成一个字段和一个像这样定义的 Timer 对象;
Public WithEvents tim As New Timer
...
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tim.Tick
End Sub
...
Run Code Online (Sandbox Code Playgroud)
如何在 C# 中重写这一行?
小智 6
在 C# 中,您可以EventHandler通过使用+=运算符向事件注册方法委托来注册一个,如下所示:
public Timer tim = new Timer();
tim.Tick += Timer1_Tick;
private void Timer1_Tick(object sender, EventArgs e)
{
// Event handling code here
}
Run Code Online (Sandbox Code Playgroud)
这是有效的,因为类的Tick事件Timer实现Event如下:
public event EventHandler Tick
Run Code Online (Sandbox Code Playgroud)
并且EventHandler是一个带有签名的方法委托:
public delegate void EventHandler(
Object sender,
EventArgs e
)
Run Code Online (Sandbox Code Playgroud)
这就是为什么任何符合EventHandler签名的方法都可以用作处理程序的原因。
| 归档时间: |
|
| 查看次数: |
11503 次 |
| 最近记录: |