1
//* 把aspx页中的DataGrid的AllowSorting="True"//
2
3
private void Page_Load(object sender, System.EventArgs e)
4

{
5
if(!Page.IsPostBack)
6

{
7
8
ViewState["SortExpression"]="";//排序的字段名如"FristName",现在为空;
9
ViewState["sort"]="desc";//排序的默认先为DESC
10
databind();//绑定数据
11
}
12
}
13
14
//*读取数据绑定DataTableGrid_AdvanceSearch控件*//
15
private void databind()
16

{
17
CompanyDA DA = new CompanyDA();//调用数据类
DataTable dt = DA.GetTable("Select * From V_ContactList");//读取数据返回
DataTableGrid_AdvanceSearch.DataSource = dt.DefaultView;
18
Grid_AdvanceSearch.DataBind();
19
ViewState["table"] = dt;
20
}
21
22
//对数据进行排序//
23
private void Grid_AdvanceSearch_SortCommand(object source,System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
24

{
25
string sort=string.Empty;
26
if(ViewState["SortExpression"].ToString()==e.SortExpression.ToString())
27

{
28
if(ViewState["sort"].ToString()=="asc")
29

{sort="desc";}
30
else
{sort="asc";}
31
}
32
else
33

{
34
if(ViewState["sort"].ToString()=="asc")
35

{sort="desc";}
36
else
37

{sort="asc";}
38
}
39
40
DataTable dt =(DataTable)ViewState["table"];
41
ViewState["sort"]=sort;
42
ViewState["SortExpression"]= e.SortExpression;
43
DataView dv = new DataView();
44
dv = dt.DefaultView;
45
dv.Sort=ViewState["SortExpression"]+" "+ViewState["sort"]; //指定视图的排序方式;
46
Grid_AdvanceSearch.DataSource = dv;
47
Grid_AdvanceSearch.DataBind();
48
}
49
50

2

3

4



5

6



7

8

9

10

11

12

13

14

15

16



17

DataTable dt = DA.GetTable("Select * From V_ContactList");//读取数据返回
DataTableGrid_AdvanceSearch.DataSource = dt.DefaultView;
18

19

20

21

22

23

24



25

26

27



28

29



30



31

32

33



34

35



36

37



38

39

40

41

42

43

44

45

46

47

48

49

50
