我有一個帶有MultiView控件的頁面,並且一些視圖足夠長,可以滾動。由於評論中的控件可能需要回發才能正常運行,因此在頁面上啓用了MaintainScrollPositionOnPostBack。MultiView&MaintainScrollPositionOnPostBack
當用戶從一個視圖切換到另一個視圖時,出現問題。如果他們處於長視角的底部,並轉換到另一個長視圖,則新視圖將加載並一直滾動到底部。當用戶轉到MultiView中的新視圖時,我需要跳到頁面的頂部。
我已經嘗試使用OnActiveViewChanged事件來: - 調用RegisterStartupScript將window.location.hash設置爲我放置在頁面頂部的錨點。 - 打電話的RegisterStartupScript調用window.scrollTo(0,0) - 設置MaintainScrollPositionOnPostBack爲false暫時
的問題是,沒有這些似乎影響實際的過渡回傳,他們採取的下一個回發的效果,這實際上導致更大的問題。
任何人都有一個經過驗證的方法,只有在回傳到新視圖的回傳中,MultiView頁面才能跳到頁首?
我發現一個問題,使用這種方法,因爲它似乎並沒有爲我更新面板內的多視角,所以你需要連接到beginRequest和endRequest處理程序,按照此答案:http://stackoverflow.com/questions/616210/reset-scroll-position-after-async-postback-asp-net。這使我可以檢查回發控制並僅爲endRequest中的特定控件事件重置滾動位置。 – hearn 2011-02-02 12:23:12