如何在頁面中動態加載用戶控件?
我有一個包含radioButtons的頁面。每次單擊單選按鈕時都會在頁面中加載用戶控件(.ascx)。
我在做什麼是在同一時間加載所有控件,但將其可見性設置爲false。當用戶單擊單選按鈕時,我將特定用戶控件的可見性設置爲true。
因此,我在每次回發中加載所有用戶控件。
有沒有其他可能的方式來做到這一點?動態加載用戶控件
Q
動態加載用戶控件
7
A
回答
13
例如,在頁面上添加一個帶有「divControls」標識的runat服務器的div。
Asp允許您動態加載用戶控件「.ascx」。
下面的代碼應該可以解決您的問題。
Control ctrl = Page.LoadControl("UserControlPath");
divControls.Controls.Clear();
divControls.Controls.Add(ctrl);
0
是否有任何具體的原因來保持在單個頁面的usercontrols?
在加載所有控件並將其設置爲可見時,考慮頁面視圖狀態。
我認爲有兩個可能的解決方案:
要麼創建主機不同的用戶控制和當在某些單選按鈕用戶點擊,重定向到相應的頁面seprate頁。
按需加載,即當用戶請求用戶控件時,只加載它,但刪除所有其他加載的用戶控件,因此頁面隨時只有一個用戶控件。
1
如果你不把它們放在列表中,並且在會話中列表中,你將會遇到很多麻煩。
Ghyath的方式是正確的,但你也應該將它們添加到List中。
List<Object> Usercontrols = new List<Objects>{};
Control ctrl = Page.LoadControl("UserControlPath");
Usercontrols.Add(ctrl);
Session["Usercontrols"] = Usercontrols;
在每次回發時,您需要使用列表中的控件重新加載div。 編輯:我糾正了最後一行。
相關問題
- 1. 動態加載的用戶控件
- 2. 面板和用戶控件vs動態加載用戶控件
- 3. 基於其他控制事件動態加載用戶控件
- 4. 如何動態加載包含asp控件的用戶控件
- 5. 加載用戶控制動態
- 6. 動態加載控件
- 7. 控制動態AJAX用戶控件的加載順序
- 8. 保存加載用戶控件動態視圖狀態
- 9. 在視圖狀態下持久動態加載用戶控件
- 10. 如何動態添加用戶控件中的用戶控件
- 11. 使用jquery動態加載用戶控件ajax
- 12. 添加用戶控件動態
- 13. 動態添加用戶控件和ViewState
- 14. 防止卸載控件動態加載
- 15. 2動態加載之間傳遞數據用戶控件
- 16. 在updatepanel中動態加載用戶控件
- 17. Viewstate變量在用戶控件上動態加載丟失
- 18. 將參數發送到動態加載的用戶控件
- 19. 兩個WebPart加載用戶控件動態連接在一起
- 20. 動態加載用戶控件中的JQuery
- 21. 加載用戶控件動態丟失數據
- 22. 傳輸值到動態加載的網頁用戶控件
- 23. 如何從一個動態加載的用戶控件
- 24. 動態加載的ASP.NET用戶控件無法初始化
- 25. Iframe vs動態加載網頁用戶控件
- 26. 預加載用戶控件
- 27. 從動態加載的Web用戶控件(asp.net c#)中的控件訪問值
- 28. 無法加載視圖狀態 - 沒有動態加載控件
- 29. WPF:加載動畫用戶控件加載
- 30. 動態SQL加載器控制文件