📄 class1.cs
字号:
using System;
namespace CallBackTest
{
class DBConnection
{
private string name;
public DBConnection(string name)
{
this.name = name;
}
public String Name
{
get
{
return this.name;
}
set
{
this.name = value;
}
}
}
class DBManager
{
static DBConnection[] activeConnections;
public void AddConnections()
{
activeConnections = new DBConnection[5];
for (int i=0; i<5; i++)
{
activeConnections[i] = new DBConnection("DBConnection " + (i + 1));
}
}
public delegate void EnumConnections(DBConnection conn);
public static void AddConnectionCallBack(EnumConnections callback)
{
foreach( DBConnection conn in activeConnections)
{
callback(conn);
}
}
}
class DelegateApp
{
public static void ActiveConnectionCallBack(DBConnection conn)
{
Console.WriteLine("Callback method called for " + conn.Name);
}
public static void Main()
{
DBManager dbMgr = new DBManager();
dbMgr.AddConnections();
CallBackTest.DBManager.EnumConnections theCallBack = new CallBackTest.DBManager.EnumConnections(ActiveConnectionCallBack);
DBManager.AddConnectionCallBack(theCallBack);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -