⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ch2_13.cs

📁 《c#技术内幕代码》
💻 CS
字号:
using System;

public delegate void AgeChangeHandler( int age, object obj, ref bool dontdoit );

class Person
{
   public event AgeChangeHandler AgeChange;
   
   int fAge;
   
   public int Age
   {
      set
      {
         Boolean dontdoit = false;
	 AgeChange( value, this, ref dontdoit);
	 if ( !dontdoit )
	    fAge=value;
      }
      get
      {
         return fAge;
      }
   }
   public Person()
   {
      fAge = 0;
   }
}

class CH2_13
{
   private static void MyAgeChangeHandler( int age, object obj, ref bool dontdoit )
   {
      Console.WriteLine("MyAgeChangeHandler called with age {0} obj.age = {1}", age, ((Person)obj).Age );
      if ( age < 0 || age > 99 )
         dontdoit = true;
   }
   private static void MyAgeChangeHandler2( int age, object obj, ref bool dontdoit )
   {
       Console.WriteLine("MyAgeChangeHandler2 called with age {0}", age );
   }
   
   public static void Main()
   {
      Person p = new Person();
      // Setup our handler
      p.AgeChange += new AgeChangeHandler(MyAgeChangeHandler);
      p.AgeChange += new AgeChangeHandler(MyAgeChangeHandler2);
      p.Age = 21;
      p.Age = 33;

   }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -