易截截图软件、单文件、免安装、纯绿色、仅160KB

C# 委托的妙文【转】

委托和事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易。它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里别(biè)得慌,混身不自在。本文中,我将通过两个范例由浅入深地讲述什么是委托、为什么要使用委托、事件的由来、.Net Framework中的委托和事件、委托和事件对Observer设计模式的意义,对它们的中间代码也做了讨论。
将方法作为方法的参数
我们先不管这个标题如何的绕口,也不管委托究竟是个什么东西,来看下面这两个最简单的方法,它们不过是在屏幕上输出一句问候的话语:
以下为引用的内容:
       public void GreetPeople(string name) {
              // 做某些额外的事情,比如初始化之类,此处略
              EnglishGreeting(name);
       }
       public void EnglishGreeting(string name) {
              Console.WriteLine(”Morning, ” + name);
       }      
 
暂且不管这两个方法有没有什么实际意义。GreetPeople用于向某人问好,当我们传递代表某人姓名的name参数,比如说“Jimmy”,进去的时候,在这个方法中,将调用EnglishGreeting方法,再次传递name参数,EnglishGreeting则用于向屏幕输出 “Morning, Jimmy”。
现在假设这个程序需要进行全球化,哎呀,不好了,我是人,我不明白“Morning”是什么意思,怎么办呢?好吧,我们再加个中文版的问候方法:
以下为引用的内容:
public void ChineseGreeting(string name){
       Console.WriteLine(”早上好, ” + name);
}
 
这时候,GreetPeople也需要改一改了,不然如何判断到底用哪个版本的Greeting问候方法合适呢?在进行这个之前,我们最好再定义一个枚举作为判断的依据:
以下为引用的内容:
public enum Language{
   &nbs


相关文档:

C#获取当前路径的方法

//获取包含清单的已加载文件的路径或 UNC 位置。
public static string sApplicationPath = Assembly.GetExecutingAssembly ( ).Location;
//result: X:\xxx\xxx\xxx.dll (.dll文件所在的目录+.dll文件名)
//获取当前进程的完整路径,包含文件名(进程名)。
string str = this.GetType ( ).Assembly.Location;
//result ......

C#中用SYSTEM.XML读写XML说明与代码

<?xml version="1.0" encoding="utf-8"?>
<LinkLibrary xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Link Cat="aa" Url="aa" Desc="aa" />
<Link Cat="bb" Url="aa" Desc="aa" />
<Link Cat="cc" Url="aa" Desc="aa" />
&l ......

C#, Java 和 Matlab 6.5 书籍

ed2k://|file|[ReadFree]_C#.开发人员指南——ASP_NET、XML、web服务与.ADO_NET_11030729.rar|6563070|B1CBF4D0032C8D78FB10F5F2AE6C3882|/
ed2k://|file|[ReadFree]_C#网络应用编程_11041620.rar|8063056|7044A65903D86BF88BE8AF26D8E02B61|/
ed2k://|file|[ReadFree]_Java.P2P程序设计_11052086.rar|8742852| ......

C#创建XML

1 using System;
 2 using System.Collections;
 3 using System.Configuration;
 4 using System.Data;
 5 using System.Linq;
 6 using System.Web;
 7 using System.Web.Security;
 8 using&nbs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号