专业编程基础技术教程

网站首页 > 基础教程 正文

C# 事件驱动的简单例子

ccvgpt 2024-08-28 13:35:16 基础教程 61 ℃

以下是一个简单的C#事件驱动的演示示例:

using System;

// 定义事件发布者类
class EventPublisher
{
    // 定义事件委托类型
    public delegate void EventHandler(string message);

    // 声明事件
    public event EventHandler OnEvent;

    // 触发事件的方法
    public void TriggerEvent(string message)
    {
        // 检查事件是否有订阅者
        if (OnEvent != null)
        {
            // 触发事件
            OnEvent(message);
        }
    }
}

// 定义事件订阅者类
class EventSubscriber
{
    // 事件处理方法
    public void HandleEvent(string message)
    {
        Console.WriteLine("收到事件消息:" + message);
    }
}

class Program
{
    static void Main(string[] args)
    {
        // 创建事件发布者对象
        EventPublisher publisher = new EventPublisher();

        // 创建事件订阅者对象
        EventSubscriber subscriber = new EventSubscriber();

        // 订阅事件
        publisher.OnEvent += subscriber.HandleEvent;

        // 触发事件
        publisher.TriggerEvent("这是一个事件消息");

        Console.ReadLine();
    }
}

在示例中,定义了一个EventPublisher类作为事件发布者,其中声明了一个名为OnEvent的事件。EventPublisher类还有一个TriggerEvent方法,用于触发事件。

C# 事件驱动的简单例子

定义了一个EventSubscriber类作为事件订阅者,其中有一个HandleEvent方法,用于处理事件。

在Main方法中,创建了一个事件发布者对象和一个事件订阅者对象。然后,使用+=操作符将事件订阅者的HandleEvent方法订阅到事件发布者的OnEvent事件上。

最后,调用事件发布者的TriggerEvent方法来触发事件,并传递一个消息作为参数。当事件触发时,事件订阅者的HandleEvent方法将被调用,并输出收到的事件消息。

这个简单的示例演示了C#中事件驱动的基本原理。

Tags:

最近发表
标签列表