代表:我明白。但是当我转向事件时,很多事情我不太了解。我在 Network 上阅读了书籍、MSDN 和一些简单的示例,它们都有相同的结构。例如,这里是链接:事件示例
我举第一个例子,作者说这是关于 C# Event 最简单的例子。
这是他的代码:
public class Metronome
{
public event TickHandler Tick;
public EventArgs e = null;
public delegate void TickHandler(Metronome m, EventArgs e);
public void Start()
{
while (true)
{
System.Threading.Thread.Sleep(3000);
if (Tick != null)
{
Tick(this, e);
}
}
}
}
public class Listener
{
public void Subscribe(Metronome m)
{
m.Tick += new Metronome.TickHandler(HeardIt);
}
private void HeardIt(Metronome m, EventArgs e)
{
System.Console.WriteLine("HEARD IT");
}
}
class Test
{
static void Main()
{
Metronome m = new Metronome();
Listener l = new Listener();
l.Subscribe(m);
m.Start();
}
}
您可以注意到行:public event TickHandler Tick
. 当我更改为 时public TickHandler Tick
,程序仍然运行相同。但是我理解新行,因为它只是一个纯粹的代表。
所以,我的问题是:event
关键字 in line 的真正目的是什么:public event TickHandler Tick
。这很重要,因为所有的例子总是这样使用,但我无法解释为什么。
谢谢 :)