ch2_13.cs
来自「《c#技术内幕代码》」· CS 代码 · 共 55 行
CS
55 行
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 + =
减小字号Ctrl + -
显示快捷键?