2011-11-30 25 views
1

我找不到在ASP.NET Web窗體中實現的任何事件聚合器示例/演示。幾乎所有的文章都是針對Silverlight的。使用ASP.NET中的事件聚合器在兩個用戶控件之間進行通信

你能指點我一些文章,PREFERABLY與ASP.NET web.forms中實現事件聚合模式的工作代碼。

最簡單的例子:ASP.net webform中的兩個用戶控件,使用事件聚合器模式相互通信。

編輯

目前,我有一個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); 
     } 

這是失控:(

回答

3

的我不熟悉的事件聚合模式,而是一個解決方案: 對於目前來看,這是由經過容器頁面事件進行可以在Model View Presenter模式中找到問題,有一個框架可以將Model View Presenter帶入到Web Forms中,在文檔中有一個'cross-presenter messaging'的例子,它通過消息總線和發佈和訂閱型號:

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

另外,如果您想查看模式實現,該項目的源代碼位於Codeplex

這有幫助嗎?

+0

謝謝。這看起來很有趣,我絕對會檢查它的細節。 無論如何,我想看到與asp.net webforms聚合模式aslo。 – DevUser

相關問題