Asp.net

ASP.NET Repeater ItemDataBound 在 PreRender 事件之後發生?

  • July 15, 2015

我在 ASP.NET 2.0 Web 表單上有一個轉發器控制項。

據我了解,頁面的所有數據綁定控制項都會在事件之間的某處觸發它們的綁定Page_Load事件Page_PreRender

但是,我的中繼器ItemDataBound事件似乎發生在PreRender事件之後。

這是怎麼回事,有什麼方法可以在所有ItemDataBound事件觸發後訪問頁面控制項?

更新:

  • 中繼器在中繼器控制項中使用ObjectDataSource帶有DataSourceID聲明集的 an。
  • DataSource ID 或對像在頁面生命週期內根本不會被修改。

聲明性數據綁定(通過 DataSourceID 屬性指定的數據源)發生在 PreRender 事件之後。您正在觀察的行為是設計使然。如果這不是您需要的,您應該顯式地對控制項進行數據綁定 - 只需呼叫其 DataBind 方法。

您是否在程式碼隱藏文件中(例如在 Page_Load() 事件中)專門綁定了轉發器(myRepeater.DataBind();)?

您檢查過 ASP.NET 事件生命週期嗎?抱歉,如果您已經知道這一點,但以防萬一:http: //msdn.microsoft.com/en-us/library/ms178472.aspx

希望能幫助到你。

里卡多。

引用自:https://stackoverflow.com/questions/219467