.NET图像界面按钮的clicked事件浅谈

在.NET图像界面开发中最常见的一个事件大概就是按钮的clicked事件了,当点击图形界面的按钮时,就会调用一个与这个事件相关的方法对这个事件进行响应,做一些相关操作。

    但是事件并不局限于图像界面,也可能是满足程序的某个逻辑判断触发了事件。引发事件的对象叫做事件发送方,捕获事件并对其做出响应的对象叫做事件接收方。但是事件发送方并不知道哪个对象或者方法会处理它引发的事件,所以需要在事件发送方和事件接收方之间存在一媒介,明确某个对象或者某个类型的某个方法会对这个事件进行响应。.NET用委托作为事件发送方与事件接收方之间的媒介,委托只有一个签名,只要方法签名与委托签名匹配的方法,都可以声明自己对这个委托类型的事件的感兴趣,接收并处理它。
事件发送方的对象为了给事件接收对象传递一些额外信息,就需要写一个派生于System.EventArgs的类,封装一些数据。

复制代码 代码如下:

    public class DrawEventArgs:EventArgs
    {
        privatedouble m_Size;
        public DrawEventArgs(doublesize)
        {
            m_Size = size;
        }
        public double Size
        {
            get
            {
                returnm_Size;
            }
        }
    }

下面声明一委托,该委托有两个参数,一个是参数代表事件的发送方,另一个是参数是该事件封装的数据。
public  delegate void ShapeSizeChanged(objectsender,DrawEventArgs e);
ShapeSizeChanged的实例可以绑定到任何和它方法签名匹配的方法上。
下面是自定义事件委托,
public event ShapeSizeChanged SizeChanged;
下面是一个负责引发事件的类型代码,
复制代码 代码如下:

    public class DrawManager
    {
        public event ShapeSizeChangedSizeChanged;
        protectedvoid OnSizeChanged(DrawEventArgse)
        {
            ShapeSizeChangedtemp = SizeChanged;
            //是否有委托与该事件关联
            if(temp != null)
            {
                temp(this,e);
            }
        }
        public void SizeChange(doublesize)
        {
            DrawEventArgse = new DrawEventArgs(size);
            OnSizeChanged(e);
        }
    }

以上就是.NET图像界面按钮的clicked事件浅谈的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » ASP编程