在C#中,可以使用委托和事件来实现自定义Callback。
首先,定义一个委托类型,该委托用于表示回调函数的签名:
public delegate void CustomCallback(string message);
然后,在需要使用回调的类中定义一个事件,并使用委托类型作为事件的参数类型:
public class MyClass
{
public event CustomCallback CallbackEvent;
public void DoSomething()
{
// 在某个逻辑处理完成后触发回调事件
CallbackEvent?.Invoke("Callback message");
}
}
最后,在调用DoSomething方法的地方,订阅CallbackEvent事件并定义回调函数:
MyClass myObject = new MyClass();
myObject.CallbackEvent += message => {
Console.WriteLine(message);
};
myObject.DoSomething();
这样就可以实现自定义的Callback机制。当DoSomething方法被调用时,CallbackEvent事件会被触发,执行订阅的回调函数。