Параметр callback используется для вызова
using System; namespace MyDelegatе1 { class Class1 {[STAThread] static void Main(string[] args) { CA var1= new CA(); // Создание экземпляра делегата CA.Metod1Callback myCall = new CA.Metod1Callback(Class1.Metod2); // Значение // параметра, передаваемое методу обратного // вызова Class1.Metod2, определено // в методе Metod1 как "1". // Выполнение метода обратного вызова (Metod2), // переданного в качестве параметра CA.Metod1(myCall); } static void Metod2 (string str2){ Console.WriteLine("Выполняется метод Metod2"); Console.WriteLine(str2); } } } using System; namespace MyDelegatе1 { public class CA { public CA() { } public delegate void Metod1Callback(string str1); public static void Metod1(Metod1Callback callback) { Console.WriteLine("Выполняется метод Metod1"); // Параметр callback используется для вызова // метода обратного вызова и передачи ему // параметра (строки "1") callback("1"); } } } |
Листинг 18.1. |
Закрыть окно |
using System;
namespace MyDelegatе1
{
class Class1
{[STAThread]
static void Main(string[] args) {
CA var1= new CA();
// Создание экземпляра делегата
CA.Metod1Callback myCall =
new CA.Metod1Callback(Class1.Metod2); // Значение
// параметра, передаваемое методу обратного
// вызова Class1.Metod2, определено
// в методе Metod1 как "1".
// Выполнение метода обратного вызова (Metod2),
// переданного в качестве параметра
CA.Metod1(myCall);
}
static void Metod2 (string str2){
Console.WriteLine("Выполняется метод Metod2");
Console.WriteLine(str2);
}
}
}
using System;
namespace MyDelegatе1
{
public class CA
{ public CA() { }
public delegate void Metod1Callback(string str1);
public static void Metod1(Metod1Callback callback)
{
Console.WriteLine("Выполняется метод Metod1");
// Параметр callback используется для вызова
// метода обратного вызова и передачи ему
// параметра (строки "1")
callback("1");
}
}
}