本篇是實現用mouse點擊GridView控件任意一行,把所點擊的數據復制至另一個GridView控件上。實現大概思路,把所點擊的數據行的記錄主鍵找出來,再去過濾數據源。點擊功能,已經實現,可以參考前一篇《Mouse單擊高亮GridView數據行》http://www.49028c.com/insus/p/3679580.html它的方法是override render方法,來注冊click事件。
就使用前一篇的程序來擴展吧。在html中,添加一個table,分左右兩列,右邊有放一個GridView控件,與左邊的一樣結構。
去aspx.cs寫click事件,存儲點選記錄的主鍵,過濾數據并綁定給右邊的GridView控件。
標記1,修改一下,把獲取的數據存儲于ViewState中。這樣在演示中,不必每次都去讀取數據庫。
標記2,把ViewState的數據集綁定給原來的GridView控件。
標記3,宣告一個List<int>變量,將用它來存儲mouse點選記錄的主鍵。
標記4,在風頁Page_load時,為Pks綁定數據。如果第一次綁定,只為其new一個List<int>實例。
標記5,為第二個GridView控件寫一個方法,是為其綁定數據源。
標記6,獲取點選的記錄的主鍵,并添加至List<int>數據集中。
標記7,每次有數據變化,同時也更新session的記錄。
標記8,根據選擇的記錄主鍵值集來過濾數據源。最后的結果綁定給右邊的GridVeiw控件。
實時演示:
新聞熱點
疑難解答