ASP.NETのイベントアグリゲーターを使用して、2つのユーザーコントロール間で通信します

StackOverflow https://stackoverflow.com/questions/8331814

質問

ASP.NET Webフォームに実装されているイベントアグリゲーターのサンプル/デモは見つかりません。ほとんどすべての記事はシルバーライト向けです。

イベントアグリゲーターパターンを実装するasp.net web.formsの作業コードを使用して、いくつかの記事を教えてください。

最も簡単な例:ASP.NET Webformの2つのユーザーコントロールは、イベントアグリゲーターパターンで互いに通信します。

編集

現在、ユーザーコントロールに基づいてASP.NET Webフォームアプリケーションを大きく基づいています。コンテナASPXページは、間に通信する必要がある複数のユーザーコントロール(ASCX)をホストできます。当面は、コンテナページを通過するイベントによって行われます。

protected override void OnInit(EventArgs e)
    {
        base.OnInit(e);
// Event from UC1 is handled in UC2
        UC1.OnCategoryFilterSelected += new CategoryFilterSelectedHandler(UC2.MethodInUC2);   
// Event from UC1 is handled in in container APSX               page                                                  
              UC1.OnCategoryFilterSelected += new CategoryFilterSelectedHandler     (MethodInContainerPage);   
         }

これは制御不能になっています:(

役に立ちましたか?

解決

私はイベントアグリゲーターパターンに精通していませんが、あなたの問題の解決策は、モデルビュープレゼンターパターンに記載されている場合があります。もたらすフレームワークがあります モデルビュープレゼンター Webフォームに。ドキュメントには、メッセージバスと公開および購読モデルを介して解決される「クロスプレセンターメッセージング」の例があります。

http://www.ronaldwidha.net/2010/05/31/a-simple-example-of-webformsmvp-cross-presenter-messaging/

また、プロジェクトのソースがオンになっています CODEPLEX, 、パターンの実装を見たい場合。

それは助けますか?

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top