.net委托的完整案例
时间: 2023-03-03 20:43:01 浏览: 78
以下是一个使用 .NET 委托的简单案例,演示了如何使用委托来实现简单的回调功能。
```
using System;
// 定义委托
delegate void CallbackFunction(int value);
class Program
{
static void Main(string[] args)
{
// 创建委托实例
CallbackFunction callback = new CallbackFunction(CallbackMethod);
// 调用方法并传入委托作为回调参数
ProcessData(callback);
Console.ReadKey();
}
// 接收委托作为回调参数的方法
static void ProcessData(CallbackFunction callback)
{
for (int i = 1; i <= 10; i++)
{
// 调用委托,传入当前的循环计数器值
callback(i);
}
}
// 委托所指向的方法,用于在每次循环中输出计数器的值
static void CallbackMethod(int value)
{
Console.WriteLine("Callback called with value: " + value);
}
}
```
在上面的示例中,我们首先定义了一个委托类型 `CallbackFunction`,它接收一个 `int` 类型的参数并不返回任何值。接下来,在 `Main` 方法中,我们创建了一个 `CallbackFunction` 类型的委托实例 `callback`,并将一个方法 `CallbackMethod` 作为参数传递给它。
接着,我们调用了 `ProcessData` 方法,并将 `callback` 委托作为回调参数传递给它。在 `ProcessData` 方法中,我们使用一个 `for` 循环来遍历整数 1 到 10,并在每次循环中调用 `callback` 委托,将当前的计数器值作为参数传递给它。
最后,我们定义了 `CallbackMethod` 方法,它将在每次委托被调用时被执行。在本例中,它只是简单地将传入的参数打印到控制台上。
总之,这个例子演示了如何使用 .NET 委托来实现简单的回调功能。