TestAction()
{
if (TestEvent != null)
TestEvent();
}
}
这个例子是不是非常眼熟,和控件的事件订阅是一样的。
比如CheckBox的勾选事件:
_checkBox.Checked += _checkBox_Checked;
// TIPS:输入+=后长按Tab键,IDE将自动生成方法;+=后按一次Tab,自动生成lambda表达式方法。
…
private void _checkBox_Checked(object sender, RoutedEventArgs e) { }
同理鼠标点击事件、双击等等,只不过像是监听鼠标操作(点下左键、松开左键等等)的这一项交由C#来处理了。
注意:如果多次初始化界面,同一变量再次订阅,将订阅多次哦。
==================================================================================
下节预告:
属性不是字段——很多时候,属性是字段的包装器,保护字段不被滥用。包装器永远不可能是包装的东西。
注释:
[1] 自《深入理解C#》(第3版)Jon Skeet 著 姚琪琳 译
[2] 自 刘猛铁的C#学习视频
|