当前位置: 首页 > article >正文

c#编码技巧(三):EventArgs的使用

 c#编码技巧(三):EventArgs的使用

如果有多个类要打印信息,如Student类,Teacher类,School类...如下代码。各类统一继承于EventArgs的话,那么传参就很方便了。

using System;
using System.Collections.Generic;namespace ConsoleTest
{class Program{//把打印信息统一为一个函数,一个EventArgs参数。private static string ShowMessage(EventArgs e){if (e is Student)               //判断参数类型{var student = e as Student; //把参数转换为Student类return student.Name + ", address = " + student.Address;}else if (e is Teacher){var teacher = e as Teacher;return teacher.Name + ", course = " + teacher.Course;}elsereturn "Not found";}static void Main(string[] args){Console.WriteLine(ShowMessage(new Student("James","杭州")));Console.WriteLine(ShowMessage(new Teacher("Jack", "英语")));Console.ReadKey();}//继承于EventArgs,便于传参public class Student : EventArgs    {public string Name { get; set; }public int Age { get; set; }public string Address { get; set; }public Student(string name, string address){this.Name = name;this.Address = address;}}//继承于EventArgs,便于传参public class Teacher : EventArgs{public string Name { get; set; }public string ClassId { get; set; }public string Course { get; set; }public Teacher(string name, string course){this.Name = name;this.Course = course;}}}
}

输出:

James, address = 杭州
Jack, course = 英语

 

http://www.lryc.cn/news/2414047.html

相关文章:

  • ThreadStart和ParameterizedThreadStart的区别
  • Java中的堆和栈
  • 炫彩界面库v1.4.2-360安全卫士v8.5-UI设计器使用教程
  • 软件测试---软件测试开发基础
  • piwik 访客跟踪(一)
  • JS--JavaScript节点插入、删除、替换、克隆(appendChild、cloneNode、insertBefore、normalize、removeChild、replaceChild)
  • Response.Write具体介绍
  • Java后端纯小白eclipse/java安装最强最详细最完整教程
  • 如何复制加密光盘
  • 《本能》我们为什么管不住自己 - 三余书屋 3ysw.net
  • 使用 BTFS 在线观看种子视频
  • 超期服役14年,“机遇号”为何能如此长寿?
  • SDelete v2.04安全地擦除磁盘未分配部分中存在的任何文件数据(包括已经删除或加密的文件)
  • 记录一个SetupFactory使用手册
  • 11111111111111111111111111
  • activity-alias常见应用
  • caffe2 教程入门(python版)
  • 吐血分享9个软件下载网站以及那些开发者大佬的传奇人生
  • 各大日语学习网站整理
  • Android——动态设置view背景颜色setBackgroundColor
  • 爬虫案例之 xxx 视频网站
  • Google Translate API
  • 【ybt金牌导航8-5-4】【luogu P4128】有色图(dfs)(Polya定理)(分类讨论)
  • 【课程设计/毕业设计】java商城管理系统源码+开发文档(springboot + vue)
  • 特色租房管理系统/租房管理系统/房屋租赁管理系统
  • 【Vbox--ubuntu18.04,安装增强功能时没有VBoxGuestAdditions】
  • ostream头文件
  • (转)Javascript:history.go()和history.back()的用法与区别
  • Apk逆向_笔记
  • ViewFlipper的使用