示例代碼如下:
1 class NodeInf 2 { 3 public delegate void mydelegate(ProcessContent processContent); 4 private mydelegate myevent; 5 6 public event mydelegate mydelegateEvent 7 { 8 add 9 { 10 if (myevent == null) 11 { 12 myevent +=value; 13 } 14 } 15 16 remove 17 { 18 myevent -= value; 19 } 20 21 } 22 23 private void button1_Click(object sender, EventArgs e) 24 { 25 26 if (myevent != null && Edit==false) 27 { 28 ProcessContent content = new ProcessTable.ProcessContent(); 29 myevent(content); 30 } 31 32 } 33 34 35 36 37 } 38 39 40 41 class B 42 { 43 44 void addNode(ProcessContent Content) 45 { 46 //dosomething 47 48 } 49 50 private void button2_Click(object sender, EventArgs e) 51 { 52 NodeInf nodeinf = new NodeInf(pContent); 53 nodeinf.mydelegateEvent += new NodeInf.mydelegate(addNode); 54 55 } 56 57 58 59 }