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

建设部网站投诉如何注册网站首页布局分析

建设部网站投诉如何注册,网站首页布局分析,php培训,怎么用vs做网站转自#xff1a;http://ruizhinet.blog.163.com/blog/static/9921382820092801032681/ 之前写过一篇关于C#委托与事件的文章#xff08;见《C#委托和事件例析》#xff09;#xff0c;不过还是收到一些网友的提问。所以#xff0c;今天再换另一个角度来详解一下这个问题。…转自http://ruizhinet.blog.163.com/blog/static/9921382820092801032681/ 之前写过一篇关于C#委托与事件的文章见《C#委托和事件例析》不过还是收到一些网友的提问。所以今天再换另一个角度来详解一下这个问题。 一、在控制台下使用委托和事件 我们都知道C#中有“接口”这个概念所谓的“接口”就是定义一套标准然后由实现类来具体实现其中的方法所以说“接口是一组类的抽象”。同样道理我们可以将“委托”理解为“方法的抽象”也就是说定义一个方法的模板至于这个方法具体是怎么样的就由方法自己去实现。 我们知道接口的最大好处就是可以实现多态同理“委托”是可以实现方法的多态当我们想调用某个具体方法的时候我们不直接调用这个方法而是去调用这个委托。当然我们必须在具体方法和委托之间建立某种关联。 下面我们来看例子。 首先我们定义一个委托 public delegate void SaySomething(string name); 这跟抽象方法的语法格式很相似只是多了一个关键字delegate。既然是对方法的一种抽象那么我们最关注的当然就是方法的返回值以及方法的参数了。所以上面红色的部分就是我们定义出来的一个规矩如果某个方法想委托我去做事那么请你遵循我的规矩就是返回值为void参数为一个字符串。我们这个委托的含义是当某个人来了就向他说点东西。 好既然我们已经定义了这个规矩下面我们就定义具体的方法了。 public void SayHello(string name){    Console.WriteLine(Hello, name !);} public void SayNiceToMeetYou(string name){    Console.WriteLine(Nice to meet you, name !);} 我们这里一共定义了两个方法一个是向某人说Hello另一个是向某人说Nice to meet you。我们看到这里定义的两个方法的返回值和参数跟我们前面定义的“委托”是一致的。 接下来我们来看事件。 public event SaySomething come; 我们定义了一个事件这个事件是“有人来了”注意定义的时候我们使用event关键字除此之外我们还加上了前面定义的“委托”的名字。这个意思是说我这个事件只会跟“SaySomething”打交道并且当我这个事件发生的时候我会通知关注我的这些“委托”再由这些“委托”去调用具体的方法。 我们来定义一个测试方法 public void test() {     SaySomething sayhello new SaySomething(SayHello);    SaySomething saynice new SaySomething(SayNiceToMeetYou);    come sayhello;    come saynice;    come(张三);} 方法体中的前面两行是用来实例化委托注意我们用到了new关键字就好像实例化一个类一样然后传入一个参数但这个参数不是string类型、也不是int类型而是一个方法名。 再下面两行就是将委托加到事件上意思是说如果你这个事件发生了就告诉我一声。可以通过“”来将n个委托实例加到某个事件上一旦这个事件发生所有的这些委托实例都会得到通知。 最后一行是触发一个事件注意我们是直接用一个事件名然后跟一个参数这又跟“委托”中定义的那个规矩一致即要有一个string类型的参数。 最后运行一下 static void Main(string[] args){    Program program new Program();    program.test();    Console.Read();} 我们回过头来再看一下“事件”的定义 public event SaySomething come; 这里已经指出了“委托”的名字所以我们可以直接将方法加到事件上而省略“委托”的实例化过程因此上面的test()方法可以简单写为 public void test() {     come SayHello;    come SayNiceToMeetYou;    come(张三);}   二、在窗体中使用委托和事件 上面的例子并不能体现委托和事件的优点其实委托和事件在C#中使用非常广泛例如当我们点击某个“按钮”的时候就会有一个“Click”事件触发而这个事件会通知“委托”在C#窗体应用程序中“委托”的名字比较规范统一使用“EventHandler”它的具体格式是“void EventHandler(object sender, EventArgs e);”。相信大家都写过下面这样子的HelloWorld程序 当点击按钮的时候弹出一个对话框。我们怎样实现的呢你肯定会说我们在设计窗口双击按钮就会自动为我们生成类似如下的方法 private void button1_Click(object sender, EventArgs e){    MessageBox.Show(我被点击了);} 其实这里用到的就是事件和委托这里的button1_Click就是符合EventHandler委托规矩的一个具体的方法即返回值为void参数分别是一个object和EventArgs。 我们可以在Form1.Designer.cs中看到如下代码 this.button1.Click new System.EventHandler(this.button1_Click); 可以看到这里有一个Click事件然后将一个委托实例附加到这个事件上跟我们前面讲的控制台应用程序中的用法是完全一样的。那这个Click事件是怎么触发的呢对于这些系统类的事件并不用我们管。 当然我们也可以定义自己的事件和委托例如我定义一个事件这个事件就是输出对象的名字。 我们这里定义了一个ShowName委托和一个btnclick事件。并且在button1_Click()方法中触发这个btnclick事件。最后的结果是当我们点击按钮的时候首先弹出一个“我被点击了”的对话框然后确定之后再弹出另一个显示按钮名称的对话框 转载于:https://www.cnblogs.com/bianlan/archive/2013/01/18/2867114.html
http://wiki.neutronadmin.com/news/113288/

相关文章:

  • 做网站的经历国外广告联盟平台
  • 浙江做铁塔的公司网站网页代码怎么写
  • 研究院网站建设wordpress写博客插件
  • 影响网站权重的因素有哪些苏州做网站公司哪家比较好
  • 江苏住房和城乡建设网站fatal error: class wordpress
  • 张梅 合肥网站建设做网站除了域名还要买什么
  • 福州网站推广国家企业信用信息公示系统下载
  • 烟台企业网站建设百度域名验证网站
  • 误给传销公司做网站算犯罪吗品牌网站建设9小蝌蚪9
  • 机械技术支持 东莞网站建设jquery素材网站
  • 被k掉的网站怎么做才能有收录后台与网站
  • 网站建设的安全威胁林州网站建设
  • 上海营销型网站建设平台思帽西宁网站建设
  • 南平市建设局网站企业网站建设方案价位
  • 泉州网站开发教育类网站框架
  • 婚纱摄影网站的设计与实现论文山西网站建设公司排名
  • asp.net 网站开发 异步沈阳建设电商网站
  • wordpress 无法下载主题WordPress搜索优化工具
  • 冠县住房和城乡建设局网站搭建购物网站
  • 湖州 网站建设济南网站制作搜到
  • 网站创建方案链接制作
  • 政务网站建设目的 意义wordpress改了固定链接
  • 电子商务网站与普通网站的区别重庆cms建站系统
  • 视频网站很难建设吗企业网站建设制作公司哪家好
  • 凡科网站设计模板宝应县住房和城乡建设局网站
  • 小型企业网站开发价格一般做企业网站需要什么资料
  • 制作网站需要wordpress中关村手机报价大全
  • 常用来做网站首业的是aspnet网站开发工具
  • 手机中国建设银行网站嘉兴网站快速排名优化
  • 公司网站建设如何摊销开发网站 数据库