設置: 我目前使用SqlDataSource在更新面板內部有一個帶有GridView控件的頁面。我有一個計時器設置來每隔X秒更新一次GridView。通常,對於我每次GridView更新大約4-5個新行數據被添加到gridview時測試的內容,而最後的4-5被拋出。我一次只顯示15個結果,每次更新都會有新的結果。在ASP.NET GridView控件中維護行選擇
問題: 我允許用戶選擇行,而GridView正在更新。我通過設置SelectedIndex屬性來處理這個問題。但是,當我選擇一行,然後更新網格時,用戶選擇的行將被下推約4-5行,而選擇之前選定索引中的數據。因此,他們點擊的位置在此處被選中,而不是他們點擊的位置。
我需要一種方法來確定,如果可能從SqlDataSource/Gridview,有多少新行已添加到gridview。或通過行中的數據維護所選數據的方式,而不僅僅是SelectedIndex。
任何幫助表示讚賞,謝謝。
已解決: 好吧,我繼續前進,並在我的網格中添加了一個新的不可見列,並且現在跟蹤從數據庫中選擇的唯一ID。通過在數據綁定之前設置一個數組,並將其與數據綁定後得到的新數組進行比較,我可以使用簡單的相交來確定相同的行數。然後我用它來確定總共有多少新回發。
嗯..我明白了。是的,這會起作用,但在我的情況下似乎可能是很多處理。此外,我想知道是否有一種方法可以確定有多少行數據綁定是新的,這可能會有很大的幫助,因爲那樣我就不必再次遍歷所有行,查找可能存在或可能不存在的ID。 – user1048281 2012-02-01 13:56:26
您希望網格中有多少行?我不認爲這會需要很多處理...他們只是數字,搜索會運行得非常快。 – 2012-02-01 14:05:02
好吧,我繼續向我的網格中添加一個新的不可見列,並且現在跟蹤從數據庫中選擇的唯一ID。通過在數據綁定之前設置一個數組,並將其與數據綁定後得到的新數組進行比較,我可以使用簡單的相交來確定相同的行數。然後我用它來確定總共有多少新回發。 – user1048281 2012-02-01 15:20:20