浅谈委托和事件(个人理解)
来源:互联网 发布:电视台视频剪辑软件 编辑:程序博客网 时间:2024/06/10 01:07
今天还是学委托和事件,我就个人理解来给说说委托和事件,委托和事件没有本质的联系。
委托是一个类型就像string ,class, emun但是它的作用又有点像多态定义的时候不知道要执行那个方法,
当被注册了哪个方法后才知道。它就像一个指针指向将来不知道的哪个方法。但是不同的是委托是约束方法的。如
public delegate void ValidationDelegate(ValidationEventArgs e);//ding yi wei tuo//委托方法 void UserName_Validation(ValidationEventArgs e) { if (e.value.Length<= 2) { e.IsValid = false; } } public class ValidationEventArgs { public string value { set; get; } public bool IsValid { set; get; } }
定义的委托方法必须是跟委托的方法参数类型,参数个数一致。调用的话就直接调用
先声明委托对象
public ValidationDelegate validation=UserName_Validation;
validation(e);调用委托
事件public Even ValidationDelegate validation;
声明委托类型的对象前加个Even就是事件
事件内部声明了一个私有的委托对象;
通过Add 和remove方法只能注册和去掉方法不能赋值防止委托对象为空和被黑客调用其他的方法
委托可以用匿名函数(就是就用一次不再用了,不用定义变量直接用)
- 浅谈委托和事件(个人理解)
- 事件委托的个人理解
- 个人理解c#的委托和事件,附带例子
- 浅谈事件委托(事件代理)和事件冒泡
- 浅谈C#委托和事件
- 浅谈C#委托和事件
- 协议和委托个人理解+++++++++++++++++
- 事件,委托,回调函数个人理解
- C# 事件与委托—个人理解
- C#委托和事件理解
- 委托和事件理解(转)
- 简单理解委托和事件
- 浅谈事件委托和this的用法
- 关于事件与委托的一些个人简单理解
- 浅谈Javascript事件委托(代理)
- 浅谈事件与委托
- 委托的用法(个人理解记录)
- 理解C#中的委托和事件
- 使用Moq让单元测试变得更简单
- 在 Windows 下使用 OpenCL
- Android调用相机并将照片存储到sd卡上
- C++ STL轻松导学
- c 和 c++中的 struct 和 class
- 浅谈委托和事件(个人理解)
- Linux时间变慢解决方法
- 老生常谈--GetROProperty,GetTOProperty,SetTOProperty的区别
- android 延时执行的几种方式
- template <class T> T * funcNew(T x,int n)
- C++拷贝构造函数(深拷贝,浅拷贝)
- What are the practical differences between SVD and wavelet transforms in data analysis?
- .默认拷贝构造函数,浅拷贝,深拷贝
- HLA取出字符串中的每一个字符