C#在程序中定义和使用自定义事件的方法:首先在类中定义事件;然后定义事件的参数;接着在TestClass中来引发事件;最后使用事件即可。

C#在程序中定义和使用自定义事件的步骤有:首先在类中定义事件,然后再定义事件的参数,在TestClass中来引发事件最后使用事件

【推荐课程:C#教程】

C#在程序中定义和使用自定义事件可以分为以下几个步骤:

步骤1:在类中定义事件

using System;public class TestClass{    //....    public event EventHandler TestEvent}

步骤2:定义事件参数

注意:事件参数类TestEventArgs继承自System.EventArgs

using System;public class TestEventArgs : EventArgs{    public TestEventArgs() : base() { }     public string Message { get; set; }}

步骤3:在TestClass 引发事件

public class TestClass{    // 这个方法引发事件    public void RaiseTestEvent(string message)    {        if (TestEvent == null) return;        TestEvent(this, new TestEventArgs { Message = message });    }    public event EventHandler TestEvent; }

步骤4:使用事件

class Program{    static void Main(string[] args)    {         TestClass tc = new TestClass();        // 挂接事件处理方法        tc.TestEvent += Tc_TestEvent;                 Console.WriteLine("按任意键引发事件");        Console.ReadKey();                // 引发事件        tc.RaiseTestEvent("通过事件参数传递的字符串");                 Console.WriteLine("按任意键退出");        Console.ReadKey();    }    private static void Tc_TestEvent(object sender, EventArgs e)    {        // 将事件参数强制转换为TestEventArgs        TestEventArgs te = (TestEventArgs)e;        // 显示事件参数中的Message        Console.WriteLine(te.Message);    }}

完整的程序如下

using System;public class TestClass{    public void RaiseTestEvent(string message)    {        if (TestEvent == null) return;        TestEvent(this, new TestEventArgs { Message = message });    }     public event EventHandler TestEvent; }public class TestEventArgs : EventArgs{    public TestEventArgs() : base() { }     public string Message { get; set; }}class Program{    static void Main(string[] args)    {         TestClass tc = new TestClass();        tc.TestEvent += Tc_TestEvent;        Console.WriteLine("按任意键引发事件");        Console.ReadKey();        tc.RaiseTestEvent("通过事件参数传递的字符串");        Console.WriteLine("按任意键退出");        Console.ReadKey();    }    private static void Tc_TestEvent(object sender, EventArgs e)    {        TestEventArgs te = (TestEventArgs)e;        Console.WriteLine(te.Message);    }}

总结:以上就是本篇文章的全部内容了,希望对大家有所帮助。

更多相关文章

  1. c语言数组怎么定义?
  2. 二维数组怎么定义
  3. c语言怎么定义宏定义
  4. c语言定义函数
  5. vb数组怎么定义
  6. c语言常量定义规则
  7. c语言中合法的字符常量如何定义?
  8. c语言字符串定义的方法是什么
  9. c语言程序总是从第一个定义的函数开始执行吗?

随机推荐

  1. 全屏
  2. Android Studio 1.2中配置androidannotat
  3. Android Material Design之CoordinatorLa
  4. Android之蓝牙设备使用
  5. 安卓课程二十一 SeekBar拖动控件的使用
  6. Android 获取包名,版本信息
  7. Android attrs文件(自定义)属性详解
  8. android中的spinner动态加载内容
  9. android8.0屏蔽状态栏下拉
  10. Qt for Android Flutter - AAPT: error: