利用自定义事件实现不同窗体间的通讯 -- C#篇

暮雪白头老i

暮雪白头老i

2016-01-29 13:47

利用自定义事件实现不同窗体间的通讯 -- C#篇,利用自定义事件实现不同窗体间的通讯 -- C#篇
 C# 中的“事件”是当对象满足一定条件,发生某些事情时,类向该类的客户提供通知的一种方法。使用事件,拥有该事件的对象不必知道需要通知谁,一旦满足了某个条件,将自动调用该事件,正确通知每个需要通知的对象。通过使用事件,提高了程序的模块化程度。  要在程序中使用自定义事件,需按以下步骤进行: 1、声明事件要在类内声明事件,首先必须声明该事件的委托类型:public delegate void SelectionChangedEventHandler(object sender,     SelectionChangedEventArgs e); 说明:由于本示例程序需在事件中传递数据,因此定义了EventArgs的派生类SelectionChangedEventArgs。public class SelectionChangedEventArgs : EventArgs{    private string m_selection;      //本属性用于传递事件数据    public string Selection    {        get { return m_selection; }    }     public SelectionChangedEventArgs(string selection)    {        m_selection = selection;    }} 委托类型定义传递给处理该事件的方法的一组参数。多个事件可共享相同的委托类型,因此仅当尚未声明任何合适的委托类型时才需要执行该步骤。 接下来,声明事件本身: public event SelectionChangedEventHandler SelectionChanged;  2、调用事件如果没有任何客户将委托与该事件挂钩,该字段将为空;否则该字段引用应在调用该事件时调用的委托。因此,调用事件时通常先检查是否为空,然后再调用事件。 public class Form2 : System.Windows.Forms.Form{    ... ...     public event SelectionChangedEventHandler SelectionChanged;     .
展开更多 50%)
分享

猜你喜欢

利用自定义事件实现不同窗体间的通讯 -- C#篇

电脑网络
利用自定义事件实现不同窗体间的通讯 -- C#篇

浅析C#的事件处理和自定义事件

编程语言 网络编程
浅析C#的事件处理和自定义事件

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Visual C#实现自定义组件的设计

编程语言 网络编程
Visual C#实现自定义组件的设计

Javascript框架的自定义事件

Web开发
Javascript框架的自定义事件

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

PowerPoint借助自定义形状实现填充自定义图片

电脑网络
PowerPoint借助自定义形状实现填充自定义图片

自定义 StringTable 的自动完成功能 (C# API : SHAutoComplete)

电脑网络
自定义 StringTable 的自动完成功能 (C# API : SHAutoComplete)

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

MySQL 卸载的问题

MySQL 卸载的问题

用C#写vs插件中的一些Tip

用C#写vs插件中的一些Tip
下拉加载更多内容 ↓