基本的に、メソッドを別のクラスに渡して後で呼び出そうとしていますが、C#ではこれを理解できません(Objective-Cにはまだ慣れています)。
public class Class1{
private void btn_click(object sender, EventArgs e)
{
ServerRequest sr = new ServerRequest();
sr.DoRequest("myrequest", myCallback);
}
public void myCallback(string str)
{
}
}
次に、後でServerRequestクラスに基本的にコールバック関数を起動させたいのですが、これは不可能ですか?(私は基本的に私のソフトウェアへのログイン応答のためにサーバーに家に電話をしています)
デリゲートを使用してこれを行う方法を見つけることができず、継続的にエラーが発生します。ここに他のクラスがあります:
public class ServerRequest
{
public void DoRequest(string request, Delegate callback)
{
// do stuff....
callback("asdf");
}
}
これは#で可能ですか?Objective-Cでは、これは簡単で、次のようなことをするだけです。
[myObject performSelector(@selector(MyFunctionName)) withObjects:nil];