——此文章摘自《C#高級編程(第
版)》定價
元 特價
元 購買
圖顯示了兩個網格一個網格顯示已添加刪除或修改的數據行另一個網格顯示狀態為上表中一種的行
圖
過濾器不僅可以用於可視化的行還可以用於這些行中列的狀態在進行ModifiedOriginal 或 ModifiedCurrent選擇時這是很明顯的這兩個狀態都在第章介紹過了它們都是基於DataRowVersion枚舉的例如如果用戶更新了數據行中的一列該行就會在選擇ModifiedOriginal或 ModifiedCurrent時顯示出來但其實際值可以是從數據庫中選擇出來的初值(如果選擇了ModifiedOriginal)或者DataColumn中的當前值(如果選擇了ModifiedCurrent)
() 對數據行進行排序
除了過濾數據外有時還需要對DataView中的數據進行排序可以在DataGrid控件中單擊列標題這會按照升序或降序的順序對該列進行排序如圖所示惟一的問題是控件只能對一列進行排序而底層的DataView可以對多個列進行排序
在對數據列進行排序時可以單擊列的標題(例如上面的ProductName列)也可以通過代碼排序DataGrid會顯示一個箭頭位圖表示對哪一列進行排序
圖
要編程設置列的排列順序可以使用DataView的Sort屬性
dataViewSort = ProductName;
dataViewSort = ProductName ASC ProductID DESC;
上面的第一行按照ProductName列對數據排序如圖所示第二行按照ProductName列對數據進行升序排序再以ProductID的降序來排序DataView支持對列進行升序或降序排序—— 默認為升序如果選擇對DataView中的多個列進行排序DataGrid就不會顯示任何排序箭頭
網格中的每一列都是強類型化的其排序順序不是基於列的字符串表示而是基於實際的數據如果DataGrid有一個日期列要對它進行排序網格就會按日期來進行排序而不是按日期字符串來進行排序
[] []
From:http://tw.wingwit.com/Article/program/net/201311/14732.html