我想創建一個動態的,基於角色的選項卡控件,當用戶在選項卡之間切換時不會觸發回發。有沒有人有任何建議方法來實現這一目標?如何在ASP.net中創建動態選項卡控件,但不會觸發回發?
回答
您可以使用ASP.NET AJAX Control Toolkit它有一個完全可配置的選項卡控件,不會回發。
感謝斯科特,我使用AjaxCotnrolToolkit和我的代碼是這樣的 對於i = 0到4 昏暗tbpanel作爲新AjaxControlToolkit.TabPanel() tbpanel.HeaderText = 「文本標籤」 tbpanel.ID = 「標籤」 tbpanel.Controls.Add(新的文本框()) TabContainer1.Tabs.Add(tbpanel) Next i 但當我運行我的應用程序它不顯示任何東西在網頁上。 – user412260 2010-08-05 18:23:56
@ user412260:確保您在Page_PreInit中動態創建面板,而不是Page_Load或Page_Init。原因是TabContainer的OnInit會先於Page_Load或Page_Init觸發。正因如此,如果您在PreInit之後將面板添加到容器中,它們將不會顯示在您的頁面上。 – 2010-08-05 18:58:32
@ user412260:你的標籤面板也都有相同的ID,所以你需要做一些類似tbpanel.ID =「Tab」+ i.ToString()。讓選項卡面板具有相同的ID將會阻止顯示選項卡。 – 2010-08-05 19:10:53
當然,這是可能的。但要記住的關鍵是標籤的內容必須來自某個地方。如果更換標籤時,你不發送回發,你就必須做兩件事情之一:
- 發送內容爲所有選項卡每個請求。從字面上看,這可能是很昂貴的—。這可能意味着帶寬成本將數據發送到大多數用戶可能永遠看不到的線路上。另一方面,如果用戶在每次訪問時訪問大多數標籤,這將是一條路。你知道你的應用和你的用戶,我們不知道,所以這是你必須做出的決定。
- 使用ajax請求檢索每個選項卡的數據。這使用更少的帶寬,但如果你正在用webforms思考它會變得混亂。它推動你進入動態控制領域,並有龍。再一次,如果你對所有的Ajax請求和動態控制感到滿意,這對你來說可能是一個完美的解決方案,但只有你能知道。
我會做的是給每個標籤自己的aspx頁面,以便切換標籤實際上加載一個新的頁面。我也可能使用母版頁來保持外觀和感覺一致。這意味着仍然爲每個選項卡做一個回傳,但它以更簡潔的方式完成。
- 1. jQuery - 事件不會爲動態創建的選項卡元素觸發
- 2. 選項卡創建事件不會觸發
- 3. 如何在asp.net即時創建動態控件;回發
- 4. 觸發選項卡控制
- 5. Asp.Net動態控件回發
- 6. 當我點擊靜態選項卡時,如何觸發動態選項卡?
- 7. 如何在動態創建的ASP.net控件中動態創建ASP.net控件
- 8. 動態創建的元素不會觸發觸發器
- 9. 動態創建控件和回發
- 10. Ajax選項卡控件的TabContainer_ActiveTabChanged事件在每個回發中觸發
- 11. 動態創建的LinkButton不會觸發任何事件
- 12. 動態創建的複選框的選中變化事件,不會觸發
- 13. asp.net回傳不會觸發
- 14. 動態選項卡@運行時並在其中創建控件
- 15. 在轉發器中動態創建的LinkButtons不會觸發ItemCommand事件
- 16. ReactJS - 如何動態創建選項卡?
- 17. Asp.Net:動態創建的控件停止工作第一回發
- 18. 在android中動態創建選項卡
- 19. ASP.NET動態創建複選框將不會清除發佈後
- 20. 卡在創建觸發器
- 21. 選擇GridView控件不觸發 - ASP.NET
- 22. 在APEX中動態創建觸發器
- 23. jquery選項卡asp.net留在選項卡後回發0x800a01b6
- 24. LinkButton onclick事件不會觸發動態創建按鈕c#
- 25. 動態創建的按鈕不會觸發onclick事件
- 26. 動態創建linkbuttons的公共事件不會觸發
- 27. 動態創建的按鈕不會觸發其單擊事件
- 28. SelectedIndexChange事件不會觸發動態創建的下拉列表
- 29. 回發的動態用戶控件Asp.Net
- 30. WebForm中的動態添加控件不會觸發事件
'AutoPostBack = false' on the control? – xandercoded 2010-08-05 18:16:15