您的位置:首页 > 移动开发 > Objective-C

利用匿名委托和动态事件注册机制实现应用程序状态监视

2008-07-23 14:02 567 查看
//目的:利用匿名委托和动态事件注册机制实现应用程序状态监视

//限制:控制事件均通过CommandHelper注册

// 事件注册帮助类

public class CommandHelper
{
        public static void PerformHandler(object sender, EventArgs e)
        {
            //在此方法中实现对于用户是否操作的状态捕捉;
        }
        /// <summary>
        /// 注册事件
        /// </summary>
        /// <param name="command">命令对象</param>
        /// <param name="handler">响应委托</param>
        public static void RegisteClickEvent(object command, System.EventHandler handler)
        {
            System.Reflection.EventInfo eventInfo = command.GetType().GetEvent("Click", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.Public);
            if (eventInfo != null)
            {
                eventInfo.AddEventHandler(command, handler);
                eventInfo.AddEventHandler(command, new System.EventHandler(PerformHandler));
            }
        }
 }

//客户代码

//注册按键事件

.....
CommandHelper.RegisteClickEvent(this.tsbAddNew,delegate(object o,EventArgs p)
{
                //点击时调用子窗体
                QxFunctionManager_Edit editor = new QxFunctionManager_Edit();
                editor.ShowDialog();
}
);

......
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  command object class null
相关文章推荐