通常我取到的都是DataTable型態的資料,所以必需先把資料轉成DataView的型態資料,如下:DataView dataView = new DataView(dataTable);
DataView型態的資料就可以有過濾、排序方法可以使用囉!
過濾:
過濾的用法就像是在SQL下Where指令一樣,例如:
dataView.RowFilter = "UserName = '%Johnson%'";
RowFilter就會找到CloumnName為UserName的資料列,比對內容為Johnson才會記在dataView中,其它的資料就會被移除。過濾後再指dataView指定為GridView的DataSource再Bind後就可以看到過濾後的結果了。當然也可以使用like來過濾含有指定字串的都要顯示,指令如下:
dataView.RowFilter = "UserName like '%John%'";
這個就會列出UserName欄位中,只要含有字串John的都會被顯示出來。
排序:
可以使用Sort屬性,對單一或多個資料行做排序,並且可以加入ASC和DESC參數。
只顯示前幾筆資料:
如果有需要只顯示前幾筆資料的話,我使用的方法是Delete,例如我有100筆資料,只想顯示前50筆那就用Delete把第50筆之後的資料全部都Delete。範例如下:
int showDataNum = 50;
int rowCount = dataView.Count; //100筆
if(rowCount > showDataNum)
{
for(int i = showDataNum; i < rowCount; i++)
dataView.Delete(showDataNum);
}
沒有留言:
張貼留言