您的位置:首页 > 编程语言 > C#

c# 事件的完整声明方式

2016-03-02 15:56 393 查看
完整声明方式:

public delegate void TestEventHandler();

public class Subject
{
private TestEventHandler m_testEventHandler;

public event TestEventHandler Click
{
add { this.m_testEventHandler += value; }
remove { this.m_testEventHandler -= value; }
}

public void Method()
{
if (m_testEventHandler != null)
{
m_testEventHandler();
}
}
}


简化声明方式:

public delegate void TestEventHandler();

public class Subject
{
public event TestEventHandler Test;

public void Method()
{
if (Test != null)
{
Test();
}
}
}


Test并非是TestEventHandler类型的字段,仅仅是语法糖的一种表现。

之所以使用event,而不是直接使用TestEventHandler类型的字段,是因为封闭外部的调用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: