我最近創建了一個包含ListView(LinqDataSource的數據綁定)的UserControl,它將用戶控件添加到現有的aspx頁面(動態加載usercontrol)。列表視圖未在回發中呈現
我看到一個意外的行爲,其中當我們最初加載頁面時正在加載usercontrol和顯示listview,但是當我嘗試單擊插入按鈕(從ListView的InsertTemplate)發生回發時,頁面重新加載,但沒有任何我的ListView的跡象,甚至沒有標題,查看頁面源確認它已完全消失
問題不是在重新加載usercontrol,我可以看到來自同一個usercontrol呈現的其他元素好。
我已經到了使用usercontrol並將其加載到一個新的'測試'aspx頁面的地步,它在那裏工作得很好。我已經慢慢地從我現有的頁面添加項目到測試頁面(JavaScript,jQuery驗證,recaptcha,其他asp.net控件),它仍然正常工作。現有的控件都不知道有關Listview的任何內容,所以我看不出它會如何受到影響。
任何有關爲什麼會發生這種情況的建議或調試選項的歡迎。現在我只是苦苦地將舊頁面重新創建到我的測試頁面,但現在我可以更好地使用其他地方了。
對我來說,下一步是將一堆鏈接的CascadingDropDowns移動到測試頁面上。
更新: 我注意到回發的另一個症狀,ListView的'ItemInserting'事件沒有被觸發。
感謝rtpHarry,有一些代碼綁定正在進行,目前只是一個where條件,儘管這不在回發中。我已經有一個空的數據模板,它也沒有渲染。 – TygerKrash 2011-05-20 13:47:42
在這裏給你答案rtpHarry,因爲這是你的帖子,讓我到底。問題是我錯過了ListView.DataBind()調用。添加它使我的listview渲染得很好。我仍然不太明白爲什麼它在我的測試頁面上工作。 – TygerKrash 2011-05-20 15:28:53