8

私は、アプリケーションを.Netの世界に移植するObjective-C開発者です。私のObj-Cアプリケーションでは、NSNotificationオブジェクトを使用して、少数のオブジェクト間で非同期に通信します。.Netの世界で(より具体的には、C#言語を使用して)同様のことを行う方法はありますか?基本的なアプローチは、1つのオブジェクトが1つ以上のオブジェクトがリッスンする通知を投稿することです。

おそらくこれを行うための明白な方法がありますが、私はまだそれを見つけていません...

4

4 に答える 4

7

C#またはVB.NETでデリゲートを使用することは、同等の言語統合機能です。事前定義されたデリゲートを定義または使用して、公開およびサブスクライブできる「通知」を定義することにより、イベントを作成できます。次に、サブスクライブして発生させることができるクラスのイベントを定義します。ここで見つけたら、MSDNのドキュメントに概要が記載されています。良い例はここにあります。

于 2009-01-04T00:09:26.443 に答える
1

xcode の NSNotification を使用すると、投稿をリッスンするクラス内に NSNotification オブジェクトを実装している限り、任意のクラスで受信できるメッセージを投稿できます....そしてオブザーバーを宣言します;)

これがあなたが試すことができる私の理論です... C#では、静的イベントを含む静的クラスを構築することにより、独自の通知センターを作成することができます。次に、他のクラスで、イベントのインスタンスを作成するだけです。これを行うことで、Xcode の NSNotificationCenter と同じ動作を再現できます。

これも試しましたか?http://www.codeproject.com/Tips/438582/Csharp-NotificationCenter?msg=4398005#xx4398005xx

タイプミスでごめんなさい!電話での返信はめんどくさい!

于 2013-09-11T12:48:42.680 に答える