在Silverlight 3.0應用程序中,有一個外殼頁面用作許多子控件和其他Silverlight頁面的導航片。 Silverlight頁面通過Frame對象()包含在shell頁面中。頁面通過代碼隱藏文件動態旋轉,因此在xaml中沒有直接引用它們。回調/ noftify事件父頁面的最佳方式是什麼?
這些動態包含的頁面如何回調到shell頁面?我們目前正在使用事件從包含的用戶控件進行通信,但這些是我們可以在xaml中訂閱的已知事件...因此,如果提出事件,請包含具體示例。
TIA。
在Silverlight 3.0應用程序中,有一個外殼頁面用作許多子控件和其他Silverlight頁面的導航片。 Silverlight頁面通過Frame對象()包含在shell頁面中。頁面通過代碼隱藏文件動態旋轉,因此在xaml中沒有直接引用它們。回調/ noftify事件父頁面的最佳方式是什麼?
這些動態包含的頁面如何回調到shell頁面?我們目前正在使用事件從包含的用戶控件進行通信,但這些是我們可以在xaml中訂閱的已知事件...因此,如果提出事件,請包含具體示例。
TIA。
如果要創建從每個子控件父頁面,您可能可以使用代理來完成此操作。很普通的例子:
public delegate void FunctionDelegate(string ChildControlName);
在父容器類:
在父容器構造:
EventFunc = DoSomeAction;
通行證EventFunc到子對象,並調用適當的時候。
我會推薦使用模式和實踐團隊開發的棱鏡。
棱鏡(通過EventAggregator)允許您將來自任何源的通知推送給您指定事件的偵聽器。這很酷。
這是一個關於通過棱鏡視圖之間傳輸視頻: http://channel9.msdn.com/posts/akMSFT/Creating-a-modular-application-using-Prism-v2-Screencast-44--Decoupled-Communication/