C# 事件(Event)应用说明二

简单示例如下

一.界面显示:

二.源代码示例:

cs 复制代码
        // 定义一个委托类型,用于事件处理程序
        public delegate void MyEventHandler(object sender, EventArgs e);

        // 发布者类
        public class ProcessBusinessClass
        {
            // 声明事件
            public event MyEventHandler ProcessCompleted;

            // 触发事件的方法
            protected virtual void OnProcessCompleted(EventArgs e)
            {
                ProcessCompleted?.Invoke(this, e);
            }

            // 模拟业务逻辑过程并触发事件
            public void StartMyEvent()
            {
                //Console.WriteLine("Process Started!");
                MessageBox.Show("事件触发开始");

                // 这里可以加入实际的运算逻辑的代码

                // 业务逻辑完成,触发事件
                OnProcessCompleted(EventArgs.Empty);
            }
        }

        // 订阅者类
        public class EventSubscriberClass
        {
            public void SubMyEvent(ProcessBusinessClass process)
            {
                process.ProcessCompleted += Process_ProcessCompleted;
            }

            private void Process_ProcessCompleted(object sender, EventArgs e)
            {
                
                MessageBox.Show("事件被执行!");
            }
        }


            private void DoSomething()
            {
                ProcessBusinessClass process = new ProcessBusinessClass();
                EventSubscriberClass subscriber = new EventSubscriberClass();

                // 订阅事件
                subscriber.SubMyEvent(process);

                // 启动过程
                process.StartMyEvent();

               
            }

        private void button18_Click(object sender, EventArgs e)
        {
            DoSomething();
        }

简单示例,大家参照理解,一起学习。。。。。。

相关推荐
咕白m6251 小时前
.NET 环境下 Word 超链接批量提取方案
c#·.net
复杂网络1 小时前
论最小 Agent 计算机的形态
算法
用户91721561902111 小时前
C# 通信协议增量解析:用状态机处理半包和粘包
c#
禅思院2 小时前
Vite vs Webpack 深度对比:从启动原理到生产构建,一篇就够了
前端·架构·前端框架
kisshyshy16 小时前
🍦 雪糕、食堂、火车厢:三幅漫画吃透栈、队列与链表
javascript·算法
小码编匠18 小时前
C# 工控上位机必备:数据转换工具类与十个核心模块
后端·c#·.net
Cerrda21 小时前
开发体验升级:UnoCSS 自定义 SVG 图标热更新方案
架构·前端框架
猿人谷1 天前
不只是 CPU 阈值:STAR 如何用 GAT + Transformer 做容器级自动扩缩容?
人工智能·算法
Kstheme1 天前
把任何 GitHub 仓库变成系统设计课:这个开源项目做到了
架构
复杂网络1 天前
Stable Diffusion 视觉大模型微调技术深度调研
算法