我有2個Web用戶控件,它們都繼承了擴展UserControl的相同基類。我想提出一個事件,另一個應該意識到這一點。兩者都在同一頁面上,但第二個控件永遠不會處理我在第一個控件上提出的自定義事件!有任何想法嗎 ?請你只指向一個可能的實現(順便說一句,我在Google上搜尋它,因爲早上,但沒有運氣!)提高自定義事件以允許Web用戶控件互相通信
回答
你可以很容易地執行以下操作:
1)在控制1.
2創建事件)創建在控制2公開的方法,如果在控制1中的事件被引發
3被調用)訂閱事件的控制l 1(你在哪裏實例化它們,例如另一種控制,內容頁面或主頁)
4)從3事件處理程序內),呼叫)
5 2中創建的方法)做其他事情周圍,如果控制2應與控制1進行通信
這一切都需要服務器端的執行。我相信也可能有客戶端解決方案。評論後
編輯: 只有兩種可能的通訊方式,我能想到的:
1)控件不知道對方,因此不能直接通信。 =>您需要第三個控件/頁面/ masterpage /任何(數據庫,服務等)來啓用通信。2)控件相互引用,因此可以直接通信=>非常糟糕的OOP。如果你使用它,你根本不理解OOP,應該考慮你的工作
隨意選擇其中一個選項。
它接觸到父頁面應該參與。你能否推薦一個解決方案完全解耦,而不需要在註冊自定義事件時使用父頁面/控件? – 2010-04-06 13:46:52
您可以使用委託
查找Here爲例,從提升用戶控件活動
它接觸到父頁面應該參與。你能否推薦一個完全解耦的解決方案,而不需要註冊父頁面/控件來註冊自定義事件? – 2010-04-06 13:47:15
- 1. 從WPF控件提高用戶定義的事件
- 2. 自定義事件在用戶控件
- 3. 自定義事件在用戶控件
- 4. 如何在控件中使用事件進行相互通信?
- 5. 如何暴露和提高vb.net winforms用戶控件的自定義事件
- 6. 在自定義控件中提高事件
- 7. Winforms用戶控制自定義事件
- 8. 從自定義類提高事件
- 9. Web用戶控件自引用(高級)
- 10. 提高Me.Click在自定義用戶控件(VB.Net)
- 11. 允許用戶處理事件以代替默認事件
- 12. 用戶控件vs自定義控件
- 13. 自定義用戶控件
- 14. 自定義控制客戶端事件
- 15. 自定義控件事件不是用戶控制
- 16. 在自定義事件上允許「查找用法」的IDE?
- 17. 如何控制以允許用戶控件事件觸發的方式加載哪個用戶控件
- 18. 允許用戶自定義網頁
- 19. ASP.NET自定義Web控件
- 20. ASP.NET Web自定義控件
- 21. 允許自定義頁眉在web api
- 22. 自定義控制事件
- 23. 呼叫用戶控件並傳遞具有允許值的自定義屬性
- 24. C#Designed不能識別自定義用戶控件中的自定義事件
- 25. 通過自定義控件屬性或自定義控件的自定義事件傳遞函數?
- 26. xPages自定義控件與允許多個實例的自定義屬性組
- 27. 如何從用戶控件提取自定義的路由事件?
- 28. 什麼是自定義控件和用戶定義控件?
- 29. 自定義TreeView用戶控件MVVM雙擊冒泡事件WPF
- 30. 事件不會在自定義用戶控件中觸發
你能告訴我們你到目前爲止的源代碼嗎? – 2010-04-02 20:57:36
這裏有一個類似的問題(儘管它討論了同一頁上的不同嵌套控件)http://stackoverflow.com/questions/2550283/asp-net-event-delegation-between-user-controls/2550325你必須做一些類似於針對這個問題的答案來將控制事件附加在一起。 – R0MANARMY 2010-04-03 02:19:47
我已經嘗試了很多方法,我會測試這個! – 2010-04-03 09:54:48