1
using System;
2
using System.Collections;
3
using System.ComponentModel;
4
using System.Data;
5
using System.Drawing;
6
using System.Web;
7
using System.Web.SessionState;
8
using System.Web.UI;
9
using System.Web.UI.WebControls;
10
using System.Web.UI.HtmlControls;
11
using System.Data.SqlClient;
12
13
namespace changedpage
14
{
15
/// <summary>
16
/// 写得不好,希望大家给我批评,指正,此致敬礼
17
/// </summary>
18
public class dg_changed_sort: System.Web.UI.Page
19
{
20
protected System.Web.UI.WebControls.DataGrid myDataGrid;
21
protected System.Web.UI.WebControls.Label SqlStatement;
22
protected SqlConnection myconnection = new SqlConnection();
23
protected string strsql = "SELECT CustomerID, CompanyName , ContactName , ContactTitle , Phone , Fax FROM Customers ";
24
protected DataSet mydataset = new DataSet();
25
26
private void Page_Load(object sender, System.EventArgs e)
27
{
28
// 在此处放置用户代码以初始化页面
29
30
if(!IsPostBack)
31
{
32
binddata("CustomerID","");
33
}
34
}
35
private void binddata(string sqlstatement1,string sqlstatement2)
36
{
37
string strconn = "server = localhost;user id =sa;password =;database =Northwind";
38
39
myconnection.ConnectionString = strconn;
40
SqlDataAdapter mycommand = new SqlDataAdapter(strsql,myconnection);
41
mycommand.Fill(mydataset,"customers");
42
string allsqlstatement = sqlstatement1+sqlstatement2;
43
if(!IsPostBack)
44
{
45
46
allsqlstatement=allsqlstatement.Trim();
47
}
48
else
49
{
50
51
allsqlstatement="";
52
allsqlstatement=allsqlstatement+sqlstatement2;
53
}
54
55
myDataGrid.DataSource = mydataset.Tables["customers"].DefaultView.Sort=allsqlstatement;
56
myDataGrid.DataSource = mydataset.Tables["customers"].DefaultView;
57
myDataGrid.DataBind();
58
59
}
60
61
#region Web 窗体设计器生成的代码
62
override protected void OnInit(EventArgs e)
63
{
64
//
65
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
66
//
67
InitializeComponent();
68
base.OnInit(e);
69
}
70
71
/// <summary>
72
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
73
/// 此方法的内容。
74
/// </summary>
75
private void InitializeComponent()
76
{
77
this.myDataGrid.PageIndexChanged += new
78
79
System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.myDataGrid_PageIndexChanged);
80
this.myDataGrid.SortCommand += new
81
82
System.Web.UI.WebControls.DataGridSortCommandEventHandler(this.myDataGrid_SortCommand);
83
this.Load += new System.EventHandler(this.Page_Load);
84
85
}
86
#endregion
87
88
private void myDataGrid_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
89
90
91
{
//SqlStatement是一个属性为隐蔵的label
92
SqlStatement.Text=e.SortExpression.ToString();
93
string sqlstatement2 = SqlStatement.Text;
94
binddata("",sqlstatement2);
95
}
96
private void myDataGrid_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
97
{
98
myDataGrid.CurrentPageIndex=e.NewPageIndex;
99
string sqlstatement3 = SqlStatement.Text;
100
binddata("",sqlstatement3);
101
102
}
103
104
105
106
}
107
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
//SqlStatement是一个属性为隐蔵的label
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
浙公网安备 33010602011771号