DataGrid应用在管理列表中的经典实例
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
using System.Configuration;
13
14
namespace news.admin
15
{
16
/// <summary>
17
/// admin_article 的摘要说明。
18
/// </summary>
19
public class admin_article : System.Web.UI.Page
20
{
21
protected System.Data.SqlClient.SqlConnection SqlConnection1; //添加数据库的操作对象
22
protected System.Data.SqlClient.SqlDataAdapter SqlDataAdapter1;
23
protected System.Data.DataSet DataSet1;
24
protected System.Data.SqlClient.SqlCommand SqlCommand1;
25
protected System.Data.SqlClient.SqlDataReader SqlDataReader1;
26
27
protected System.Web.UI.WebControls.Button Button1;
28
protected System.Web.UI.WebControls.Label myLabel;
29
protected System.Web.UI.WebControls.TextBox keyword;
30
protected System.Web.UI.WebControls.DropDownList search;
31
protected System.Web.UI.WebControls.LinkButton LinkButton1;
32
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator1;
33
protected System.Web.UI.WebControls.LinkButton btnFirst;
34
protected System.Web.UI.WebControls.LinkButton LinkButton2;
35
protected System.Web.UI.WebControls.LinkButton Linkbutton3;
36
protected System.Web.UI.WebControls.LinkButton Linkbutton4;
37
protected System.Web.UI.WebControls.Label lblCurrentIndex;
38
protected System.Web.UI.WebControls.Label lblPageCount;
39
protected System.Web.UI.WebControls.DropDownList DropDownList1;
40
protected System.Web.UI.WebControls.Button Button2;
41
protected System.Web.UI.WebControls.DropDownList DropDownList2;
42
protected System.Web.UI.WebControls.Button Button3;
43
protected System.Web.UI.WebControls.DataGrid MyDataGrid;
44
45
private void Page_Load(object sender, System.EventArgs e)
46
{
47
getClass();
48
getArticle();
49
50
for(int i=1;i<=MyDataGrid.PageCount;i++)
51
{
52
DropDownList2.Items.Add("第"+i+"页");
53
}
54
//Page.DataBind();
55
}
56
57
private void getClass() //根据权限设置分类和ClassName控件的下拉列表
58
{
59
string da=(string)Session["userclass"] ;
60
string classname=(string)Session["classname"];
61
if(da.Trim()=="系统管理员")
62
{
63
SqlConnection1 = new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);//连接字符串,建立连接
64
SqlDataAdapter1 = new SqlDataAdapter();
65
SqlDataAdapter1.SelectCommand=new SqlCommand("sp_selFclassAll",SqlConnection1);
66
SqlDataAdapter1.SelectCommand.CommandType=CommandType.StoredProcedure ;
67
DataSet1=new DataSet();
68
try
69
{
70
SqlDataAdapter1.Fill(DataSet1,"ClassName");
71
}
72
catch (SqlException e1)
73
{
74
myLabel.Text ="数据库操作错误:"+e1.Message;
75
}
76
DropDownList1.DataSource=DataSet1.Tables["ClassName"].DefaultView;
77
DropDownList1.DataTextField="className";
78
DropDownList1.DataValueField="className";
79
DropDownList1.DataBind();
80
SqlConnection1.Close();
81
DropDownList1.Items.Add("全部");
82
DropDownList1.Items.FindByText("全部").Selected=true;
83
}
84
else //不是系统管理员,只能管理一个新闻分类
85
{
86
ListItem d=new ListItem(classname,classname);
87
DropDownList1.Items.Add(d);
88
}
89
}
90
91
private void getArticle() //取得Article数据
92
{
93
SqlConnection1 = new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);//取连接字符串,建立连接
94
SqlDataAdapter1 = new SqlDataAdapter();
95
string g=(string)Session["userclass"];
96
string h=(string)Session["classname"];
97
if(g.Trim()=="系统管理员"&&h.Trim()=="12")
98
{
99
SqlDataAdapter1.SelectCommand=new SqlCommand("SELECT * FROM db_Article ORDER BY dateandtime DESC ",SqlConnection1);
100
}
101
else
102
{
103
SqlDataAdapter1.SelectCommand=new SqlCommand("SELECT * FROM db_Article WHERE (classname = @classname) ORDER BY dateandtime DESC",SqlConnection1);
104
SqlDataAdapter1.SelectCommand.Parameters.Add("@classname",SqlDbType.Char,40);
105
SqlDataAdapter1.SelectCommand.Parameters["@classname"].Value=(string)Session["classname"];
106
}
107
DataSet1=new DataSet();
108
try
109
{
110
SqlDataAdapter1.Fill(DataSet1,"Article");
111
}
112
catch (SqlException e1)
113
{
114
myLabel.Text ="数据库操作错误:"+e1.Message;
115
}
116
MyDataGrid.DataSource=DataSet1;
117
MyDataGrid.DataBind();
118
lblCurrentIndex.Text="第"+((Int32)MyDataGrid.CurrentPageIndex+1)+"页";
119
lblPageCount.Text="/共"+MyDataGrid.PageCount+"页";
120
string da=(string)Session["userclass"] ;
121
if(da.Trim()=="系统管理员")
122
{
123
Session["classname"]="12";
124
}
125
}
126
127
public void PagerButtonClick(Object sender, EventArgs e)
128
{
129
//获得LinkButton的参数值
130
string arg = ((LinkButton)sender).CommandArgument;
131
switch(arg)
132
{
133
case ("next"):
134
{
135
if (MyDataGrid.CurrentPageIndex < (MyDataGrid.PageCount - 1))
136
MyDataGrid.CurrentPageIndex ++;
137
break;
138
}
139
case ("prev"):
140
{
141
if (MyDataGrid.CurrentPageIndex > 0)
142
MyDataGrid.CurrentPageIndex --;
143
break;
144
}
145
case ("last"):
146
{
147
MyDataGrid.CurrentPageIndex = (MyDataGrid.PageCount - 1);
148
break;
149
}
150
case("first"):
151
{
152
MyDataGrid.CurrentPageIndex =0;
153
break;
154
}
155
}
156
if(DropDownList1.SelectedItem.Text.Trim()=="全部")
157
{
158
getArticle();
159
}
160
else
161
{
162
Session["classname"]=DropDownList1.SelectedItem.Text.Trim();
163
getArticle();
164
}
165
}
166
167
Web Form Designer generated code
192
193
public void MyDataGrid_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) //删除新闻
194
{
195
string c=(string)Session["userclass"];
196
if(c.Trim()=="系统管理员"||(int)Session["chgnews"]==1)
197
{ //删除分类发表文章数
198
SqlConnection1 = new SqlConnection(ConfigurationSettings.AppSettings["dsn"]); //取连接字符串,并建立连接
199
SqlCommand1=new SqlCommand("sp_delClassNum",SqlConnection1);
200
SqlCommand1.CommandType=CommandType.StoredProcedure;
201
SqlCommand1.Parameters.Add("@className",SqlDbType.Char);
202
SqlCommand1.Parameters["@className"].Value = e.Item.Cells[2].Text.Trim(); //Session["classname"].ToString().Trim();
203
try
204
{
205
SqlConnection1.Open();
206
SqlCommand1.ExecuteNonQuery();
207
}
208
catch (SqlException e1)
209
{
210
myLabel.Text ="数据库操作错误:"+e1.Message;
211
}
212
SqlConnection1.Close();
213
//删除文章
214
SqlCommand1=new SqlCommand("sp_delArticle",SqlConnection1);
215
SqlCommand1.CommandType=CommandType.StoredProcedure;
216
SqlCommand1.Parameters.Add(new SqlParameter("@articleid",SqlDbType.BigInt));
217
SqlCommand1.Parameters["@articleid"].Value = MyDataGrid.DataKeys[e.Item.ItemIndex];
218
try
219
{
220
SqlConnection1.Open();
221
int r=SqlCommand1.ExecuteNonQuery();
222
if(r>0)
223
{
224
myLabel.Text="删除成功!";
225
}
226
else
227
{
228
myLabel.Text="删除错误!";
229
}
230
getArticle();
231
}
232
catch (SqlException e1)
233
{
234
myLabel.Text ="数据库操作错误:"+e1.Message;
235
}
236
SqlConnection1.Close();
237
//删除管理员发表文章数
238
SqlCommand1=new SqlCommand("sp_delNum",SqlConnection1);
239
SqlCommand1.CommandType=CommandType.StoredProcedure;
240
SqlCommand1.Parameters.Add(new SqlParameter("@username",SqlDbType.Char,200));
241
SqlCommand1.Parameters["@username"].Value = e.Item.Cells[4].Text.Trim(); //文章的发表者
242
try
243
{
244
SqlConnection1.Open();
245
SqlCommand1.ExecuteNonQuery();
246
}
247
catch (SqlException e1)
248
{
249
myLabel.Text ="数据库操作错误:"+e1.Message;
250
}
251
SqlConnection1.Close();
252
}
253
else
254
{
255
myLabel.Text="你无权删除此新闻";
256
}
257
}
258
259
private void LinkButton1_Click(object sender, System.EventArgs e) //搜索数据库
260
{
261
if(Page.IsValid)
262
{
263
SqlConnection1 = new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);//取连接字符串,建连接
264
SqlDataAdapter1 = new SqlDataAdapter();
265
if(search.SelectedIndex==0)
266
{
267
SqlDataAdapter1.SelectCommand=new SqlCommand("sp_searchCkArticleByTitle",SqlConnection1);
268
SqlDataAdapter1.SelectCommand.CommandType=CommandType.StoredProcedure ;
269
SqlDataAdapter1.SelectCommand.Parameters.Add("@title",SqlDbType.NVarChar ,500);
270
SqlDataAdapter1.SelectCommand.Parameters["@title"].Value=keyword.Text.Trim() ;
271
}
272
else
273
{
274
SqlDataAdapter1.SelectCommand=new SqlCommand("sp_searchCkArticleByContent",SqlConnection1);
275
SqlDataAdapter1.SelectCommand.CommandType=CommandType.StoredProcedure ;
276
SqlDataAdapter1.SelectCommand.Parameters.Add("@content",SqlDbType.NText);
277
SqlDataAdapter1.SelectCommand.Parameters["@content"].Value=keyword.Text.Trim();
278
}
279
DataSet1=new DataSet();
280
try
281
{
282
SqlDataAdapter1.Fill(DataSet1,"Article");
283
}
284
catch (SqlException e1)
285
{
286
myLabel.Text ="数据库操作错误:"+e1.Message;
287
}
288
MyDataGrid.DataSource=DataSet1;
289
MyDataGrid.DataBind();
290
}
291
}
292
public void fixLink_Click(object sender, System.EventArgs e)
293
{
294
string query=null;
295
LinkButton fixLinkone=new LinkButton();
296
LinkButton Recommendone=new LinkButton();
297
Recommendone=(LinkButton)sender;
298
fixLinkone=(LinkButton)sender;
299
SqlConnection thisConnection=new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);
300
if(Recommendone.Text.Trim()=="取消推荐")
301
{
302
query="update db_Article Set headline=0 where articleid="+Convert.ToInt32(Recommendone.CommandName);
303
}
304
else if(Recommendone.Text.Trim()=="设置推荐")
305
{
306
query="update db_Article Set headline=1 where articleid="+Convert.ToInt32(Recommendone.CommandName);
307
}
308
if(fixLinkone.Text.Trim()=="取消固顶")
309
{
310
query="update db_Article Set Isfixup=0 where articleid="+Convert.ToInt32(fixLinkone.CommandName);
311
}
312
else if(fixLinkone.Text.Trim()=="固顶")
313
{
314
query="update db_Article Set Isfixup=1 where articleid="+Convert.ToInt32(fixLinkone.CommandName);
315
}
316
SqlCommand thisCommand=new SqlCommand(query,thisConnection);
317
thisCommand.Connection.Open();
318
thisCommand.ExecuteNonQuery();
319
thisCommand.Connection.Close();
320
getArticle();
321
}
322
323
private void MyDataGrid_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
324
{
325
MyDataGrid.CurrentPageIndex = e.NewPageIndex;
326
getArticle();
327
}
328
329
private void MyDataGrid_SelectedIndexChanged(object sender, System.EventArgs e)
330
{
331
332
}
333
334
private void Button2_Click(object sender, System.EventArgs e)
335
{
336
Session["classname"]=DropDownList1.SelectedItem.Text.Trim();
337
getArticle();
338
}
339
340
private void DropDownList2_SelectedIndexChanged(object sender, System.EventArgs e)
341
{
342
MyDataGrid.CurrentPageIndex = DropDownList2.SelectedIndex;
343
if(DropDownList1.SelectedItem.Text.Trim()=="全部")
344
{
345
getArticle();
346
}
347
else
348
{
349
Session["classname"]=DropDownList1.SelectedItem.Text.Trim();
350
getArticle();
351
}
352
}
353
354
private void MyDataGrid_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
355
{
356
ListItemType itemType=e.Item.ItemType;
357
if(itemType==ListItemType.Header)
358
{
359
e.Item.Cells[6].ColumnSpan=5;
360
e.Item.Cells[6].Text="常规管理操作";
361
e.Item.Cells.RemoveAt(10);
362
e.Item.Cells.RemoveAt(9);
363
e.Item.Cells.RemoveAt(8);
364
e.Item.Cells.RemoveAt(7);
365
e.Item.Cells[6].HorizontalAlign=HorizontalAlign.Center;
366
}
367
}
368
369
private void MyDataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
370
{
371
if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem||e.Item.ItemType==ListItemType.EditItem)
372
{
373
Label MyLabel=new Label();
374
HyperLink recommend=new HyperLink();
375
LinkButton fixLink=new LinkButton();
376
LinkButton Recommendone=new LinkButton();
377
Recommendone=(LinkButton)e.Item.Cells[10].FindControl("Recommend");
378
string property="";
379
fixLink=(LinkButton)e.Item.Cells[8].FindControl("fixLink");
380
fixLink.Click += new System.EventHandler(this.fixLink_Click);
381
MyLabel=(Label)e.Item.Cells[5].FindControl("property");
382
if(Convert.ToInt32(DataBinder.Eval(e.Item.DataItem,"Isfixup"))==1)
383
{
384
property+="<font color='red'>顶</font> ";
385
fixLink.Text="取消固顶";
386
}
387
else
388
{
389
fixLink.Text="固顶";
390
}
391
if(Convert.ToInt32(DataBinder.Eval(e.Item.DataItem,"headline"))==1)
392
{
393
Recommendone.Text="取消推荐";
394
property+="<font color='green'>荐</font>";
395
}
396
else
397
Recommendone.Text="设置推荐";
398
MyLabel.Text=property;
399
}
400
}
401
}
402
}
403
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
using System.Configuration;13

14
namespace news.admin15
{16
/// <summary>17
/// admin_article 的摘要说明。18
/// </summary>19
public class admin_article : System.Web.UI.Page20
{21
protected System.Data.SqlClient.SqlConnection SqlConnection1; //添加数据库的操作对象22
protected System.Data.SqlClient.SqlDataAdapter SqlDataAdapter1;23
protected System.Data.DataSet DataSet1;24
protected System.Data.SqlClient.SqlCommand SqlCommand1;25
protected System.Data.SqlClient.SqlDataReader SqlDataReader1;26

27
protected System.Web.UI.WebControls.Button Button1;28
protected System.Web.UI.WebControls.Label myLabel;29
protected System.Web.UI.WebControls.TextBox keyword;30
protected System.Web.UI.WebControls.DropDownList search;31
protected System.Web.UI.WebControls.LinkButton LinkButton1;32
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator1;33
protected System.Web.UI.WebControls.LinkButton btnFirst;34
protected System.Web.UI.WebControls.LinkButton LinkButton2;35
protected System.Web.UI.WebControls.LinkButton Linkbutton3;36
protected System.Web.UI.WebControls.LinkButton Linkbutton4;37
protected System.Web.UI.WebControls.Label lblCurrentIndex;38
protected System.Web.UI.WebControls.Label lblPageCount;39
protected System.Web.UI.WebControls.DropDownList DropDownList1;40
protected System.Web.UI.WebControls.Button Button2;41
protected System.Web.UI.WebControls.DropDownList DropDownList2;42
protected System.Web.UI.WebControls.Button Button3;43
protected System.Web.UI.WebControls.DataGrid MyDataGrid;44
45
private void Page_Load(object sender, System.EventArgs e)46
{47
getClass(); 48
getArticle();49

50
for(int i=1;i<=MyDataGrid.PageCount;i++)51
{52
DropDownList2.Items.Add("第"+i+"页");53
}54
//Page.DataBind();55
}56

57
private void getClass() //根据权限设置分类和ClassName控件的下拉列表58
{ 59
string da=(string)Session["userclass"] ;60
string classname=(string)Session["classname"];61
if(da.Trim()=="系统管理员")62
{63
SqlConnection1 = new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);//连接字符串,建立连接64
SqlDataAdapter1 = new SqlDataAdapter();65
SqlDataAdapter1.SelectCommand=new SqlCommand("sp_selFclassAll",SqlConnection1);66
SqlDataAdapter1.SelectCommand.CommandType=CommandType.StoredProcedure ;67
DataSet1=new DataSet(); 68
try69
{70
SqlDataAdapter1.Fill(DataSet1,"ClassName");71
}72
catch (SqlException e1)73
{74
myLabel.Text ="数据库操作错误:"+e1.Message; 75
}76
DropDownList1.DataSource=DataSet1.Tables["ClassName"].DefaultView;77
DropDownList1.DataTextField="className";78
DropDownList1.DataValueField="className";79
DropDownList1.DataBind(); 80
SqlConnection1.Close();81
DropDownList1.Items.Add("全部");82
DropDownList1.Items.FindByText("全部").Selected=true;83
}84
else //不是系统管理员,只能管理一个新闻分类85
{86
ListItem d=new ListItem(classname,classname); 87
DropDownList1.Items.Add(d);88
}89
}90

91
private void getArticle() //取得Article数据92
{93
SqlConnection1 = new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);//取连接字符串,建立连接94
SqlDataAdapter1 = new SqlDataAdapter();95
string g=(string)Session["userclass"]; 96
string h=(string)Session["classname"];97
if(g.Trim()=="系统管理员"&&h.Trim()=="12") 98
{99
SqlDataAdapter1.SelectCommand=new SqlCommand("SELECT * FROM db_Article ORDER BY dateandtime DESC ",SqlConnection1);100
}101
else 102
{103
SqlDataAdapter1.SelectCommand=new SqlCommand("SELECT * FROM db_Article WHERE (classname = @classname) ORDER BY dateandtime DESC",SqlConnection1);104
SqlDataAdapter1.SelectCommand.Parameters.Add("@classname",SqlDbType.Char,40);105
SqlDataAdapter1.SelectCommand.Parameters["@classname"].Value=(string)Session["classname"]; 106
}107
DataSet1=new DataSet(); 108
try109
{110
SqlDataAdapter1.Fill(DataSet1,"Article");111
}112
catch (SqlException e1)113
{114
myLabel.Text ="数据库操作错误:"+e1.Message; 115
}116
MyDataGrid.DataSource=DataSet1;117
MyDataGrid.DataBind(); 118
lblCurrentIndex.Text="第"+((Int32)MyDataGrid.CurrentPageIndex+1)+"页";119
lblPageCount.Text="/共"+MyDataGrid.PageCount+"页"; 120
string da=(string)Session["userclass"] ;121
if(da.Trim()=="系统管理员")122
{123
Session["classname"]="12";124
}125
} 126

127
public void PagerButtonClick(Object sender, EventArgs e)128
{129
//获得LinkButton的参数值130
string arg = ((LinkButton)sender).CommandArgument;131
switch(arg)132
{133
case ("next"):134
{135
if (MyDataGrid.CurrentPageIndex < (MyDataGrid.PageCount - 1))136
MyDataGrid.CurrentPageIndex ++;137
break;138
}139
case ("prev"):140
{141
if (MyDataGrid.CurrentPageIndex > 0)142
MyDataGrid.CurrentPageIndex --;143
break;144
}145
case ("last"):146
{147
MyDataGrid.CurrentPageIndex = (MyDataGrid.PageCount - 1);148
break;149
}150
case("first"):151
{152
MyDataGrid.CurrentPageIndex =0;153
break;154
}155
}156
if(DropDownList1.SelectedItem.Text.Trim()=="全部")157
{158
getArticle();159
}160
else161
{162
Session["classname"]=DropDownList1.SelectedItem.Text.Trim();163
getArticle(); 164
}165
}166

167
Web Form Designer generated code192

193
public void MyDataGrid_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) //删除新闻194
{ 195
string c=(string)Session["userclass"]; 196
if(c.Trim()=="系统管理员"||(int)Session["chgnews"]==1)197
{ //删除分类发表文章数 198
SqlConnection1 = new SqlConnection(ConfigurationSettings.AppSettings["dsn"]); //取连接字符串,并建立连接199
SqlCommand1=new SqlCommand("sp_delClassNum",SqlConnection1); 200
SqlCommand1.CommandType=CommandType.StoredProcedure;201
SqlCommand1.Parameters.Add("@className",SqlDbType.Char);202
SqlCommand1.Parameters["@className"].Value = e.Item.Cells[2].Text.Trim(); //Session["classname"].ToString().Trim();203
try204
{205
SqlConnection1.Open();206
SqlCommand1.ExecuteNonQuery(); 207
}208
catch (SqlException e1)209
{210
myLabel.Text ="数据库操作错误:"+e1.Message;211
}212
SqlConnection1.Close(); 213
//删除文章214
SqlCommand1=new SqlCommand("sp_delArticle",SqlConnection1); 215
SqlCommand1.CommandType=CommandType.StoredProcedure;216
SqlCommand1.Parameters.Add(new SqlParameter("@articleid",SqlDbType.BigInt));217
SqlCommand1.Parameters["@articleid"].Value = MyDataGrid.DataKeys[e.Item.ItemIndex]; 218
try219
{220
SqlConnection1.Open();221
int r=SqlCommand1.ExecuteNonQuery();222
if(r>0)223
{224
myLabel.Text="删除成功!"; 225
}226
else227
{228
myLabel.Text="删除错误!";229
} 230
getArticle();231
}232
catch (SqlException e1)233
{234
myLabel.Text ="数据库操作错误:"+e1.Message;235
}236
SqlConnection1.Close(); 237
//删除管理员发表文章数238
SqlCommand1=new SqlCommand("sp_delNum",SqlConnection1); 239
SqlCommand1.CommandType=CommandType.StoredProcedure;240
SqlCommand1.Parameters.Add(new SqlParameter("@username",SqlDbType.Char,200));241
SqlCommand1.Parameters["@username"].Value = e.Item.Cells[4].Text.Trim(); //文章的发表者242
try243
{244
SqlConnection1.Open();245
SqlCommand1.ExecuteNonQuery(); 246
}247
catch (SqlException e1)248
{249
myLabel.Text ="数据库操作错误:"+e1.Message;250
}251
SqlConnection1.Close(); 252
}253
else254
{255
myLabel.Text="你无权删除此新闻";256
}257
}258

259
private void LinkButton1_Click(object sender, System.EventArgs e) //搜索数据库260
{261
if(Page.IsValid)262
{263
SqlConnection1 = new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);//取连接字符串,建连接264
SqlDataAdapter1 = new SqlDataAdapter(); 265
if(search.SelectedIndex==0) 266
{267
SqlDataAdapter1.SelectCommand=new SqlCommand("sp_searchCkArticleByTitle",SqlConnection1); 268
SqlDataAdapter1.SelectCommand.CommandType=CommandType.StoredProcedure ;269
SqlDataAdapter1.SelectCommand.Parameters.Add("@title",SqlDbType.NVarChar ,500);270
SqlDataAdapter1.SelectCommand.Parameters["@title"].Value=keyword.Text.Trim() ; 271
}272
else 273
{274
SqlDataAdapter1.SelectCommand=new SqlCommand("sp_searchCkArticleByContent",SqlConnection1); 275
SqlDataAdapter1.SelectCommand.CommandType=CommandType.StoredProcedure ;276
SqlDataAdapter1.SelectCommand.Parameters.Add("@content",SqlDbType.NText);277
SqlDataAdapter1.SelectCommand.Parameters["@content"].Value=keyword.Text.Trim(); 278
}279
DataSet1=new DataSet(); 280
try281
{282
SqlDataAdapter1.Fill(DataSet1,"Article");283
}284
catch (SqlException e1)285
{286
myLabel.Text ="数据库操作错误:"+e1.Message; 287
}288
MyDataGrid.DataSource=DataSet1;289
MyDataGrid.DataBind(); 290
}291
}292
public void fixLink_Click(object sender, System.EventArgs e)293
{294
string query=null;295
LinkButton fixLinkone=new LinkButton();296
LinkButton Recommendone=new LinkButton();297
Recommendone=(LinkButton)sender;298
fixLinkone=(LinkButton)sender;299
SqlConnection thisConnection=new SqlConnection(ConfigurationSettings.AppSettings["dsn"]);300
if(Recommendone.Text.Trim()=="取消推荐")301
{302
query="update db_Article Set headline=0 where articleid="+Convert.ToInt32(Recommendone.CommandName);303
}304
else if(Recommendone.Text.Trim()=="设置推荐")305
{306
query="update db_Article Set headline=1 where articleid="+Convert.ToInt32(Recommendone.CommandName);307
}308
if(fixLinkone.Text.Trim()=="取消固顶")309
{310
query="update db_Article Set Isfixup=0 where articleid="+Convert.ToInt32(fixLinkone.CommandName);311
}312
else if(fixLinkone.Text.Trim()=="固顶")313
{314
query="update db_Article Set Isfixup=1 where articleid="+Convert.ToInt32(fixLinkone.CommandName);315
}316
SqlCommand thisCommand=new SqlCommand(query,thisConnection);317
thisCommand.Connection.Open();318
thisCommand.ExecuteNonQuery();319
thisCommand.Connection.Close();320
getArticle();321
}322
323
private void MyDataGrid_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)324
{325
MyDataGrid.CurrentPageIndex = e.NewPageIndex; 326
getArticle();327
}328

329
private void MyDataGrid_SelectedIndexChanged(object sender, System.EventArgs e)330
{331
332
}333

334
private void Button2_Click(object sender, System.EventArgs e)335
{336
Session["classname"]=DropDownList1.SelectedItem.Text.Trim();337
getArticle(); 338
}339

340
private void DropDownList2_SelectedIndexChanged(object sender, System.EventArgs e)341
{342
MyDataGrid.CurrentPageIndex = DropDownList2.SelectedIndex;343
if(DropDownList1.SelectedItem.Text.Trim()=="全部")344
{345
getArticle();346
}347
else348
{349
Session["classname"]=DropDownList1.SelectedItem.Text.Trim();350
getArticle(); 351
} 352
}353

354
private void MyDataGrid_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)355
{356
ListItemType itemType=e.Item.ItemType;357
if(itemType==ListItemType.Header)358
{359
e.Item.Cells[6].ColumnSpan=5;360
e.Item.Cells[6].Text="常规管理操作";361
e.Item.Cells.RemoveAt(10);362
e.Item.Cells.RemoveAt(9);363
e.Item.Cells.RemoveAt(8);364
e.Item.Cells.RemoveAt(7);365
e.Item.Cells[6].HorizontalAlign=HorizontalAlign.Center;366
}367
}368

369
private void MyDataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)370
{371
if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem||e.Item.ItemType==ListItemType.EditItem) 372
{373
Label MyLabel=new Label();374
HyperLink recommend=new HyperLink();375
LinkButton fixLink=new LinkButton();376
LinkButton Recommendone=new LinkButton();377
Recommendone=(LinkButton)e.Item.Cells[10].FindControl("Recommend");378
string property="";379
fixLink=(LinkButton)e.Item.Cells[8].FindControl("fixLink");380
fixLink.Click += new System.EventHandler(this.fixLink_Click);381
MyLabel=(Label)e.Item.Cells[5].FindControl("property");382
if(Convert.ToInt32(DataBinder.Eval(e.Item.DataItem,"Isfixup"))==1)383
{384
property+="<font color='red'>顶</font> ";385
fixLink.Text="取消固顶";386
}387
else388
{389
fixLink.Text="固顶";390
}391
if(Convert.ToInt32(DataBinder.Eval(e.Item.DataItem,"headline"))==1) 392
{393
Recommendone.Text="取消推荐";394
property+="<font color='green'>荐</font>";395
}396
else 397
Recommendone.Text="设置推荐";398
MyLabel.Text=property;399
}400
}401
}402
}403

1
<%@ Page Language="c#" Inherits="news.admin.admin_article" CodeBehind="admin_article.aspx.cs" AutoEventWireup="false" %>
2
<HTML>
3
<HEAD>
4
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5
<LINK href="/news/inc/style.css" type="text/css" rel="stylesheet">
6
</HEAD>
7
<body>
8
<div align="center"><asp:label id="myLabel" runat="server" width="100%" ForeColor="Red" Height="2px"></asp:label></div>
9
<form id="myForm" action="post" runat="server">
10
<div align="center">请选择新闻分类:
11
<asp:dropdownlist id="DropDownList1" runat="server" DESIGNTIMEDRAGDROP="30">
12
<asp:ListItem Value="全部" Selected="True">全部</asp:ListItem>
13
</asp:dropdownlist><asp:button id="Button2" runat="server" Text="确定"></asp:button>
14
新闻搜索:
15
<asp:textbox id="keyword" runat="server"></asp:textbox><asp:dropdownlist id="search" runat="server">
16
<asp:ListItem Value="标题" Selected="True">标题</asp:ListItem>
17
<asp:ListItem Value="内容">内容</asp:ListItem>
18
</asp:dropdownlist>
19
<asp:linkbutton id="LinkButton1" runat="server" Font-Bold="True" Font-Size="Medium" Font-Underline="True">搜 索</asp:linkbutton>
20
<asp:requiredfieldvalidator id="RequiredFieldValidator1" runat="server" ErrorMessage="*请输入搜索内容!" ControlToValidate="search"></asp:requiredfieldvalidator></BUTTON></div>
21
<br>
22
<ASP:DATAGRID id="MyDataGrid" runat="server" ItemStyle-CssClass="tdbg" HeaderStyle-CssClass="title"
23
CssClass="border" DataKeyField="articleid" AutoGenerateColumns="False" CellPadding="3" Align="center"
24
Width="750px" AllowPaging="True">
25
<EditItemStyle HorizontalAlign="Center" VerticalAlign="Middle"></EditItemStyle>
26
<ItemStyle HorizontalAlign="Left" CssClass="tdbg" VerticalAlign="Middle"></ItemStyle>
27
<HeaderStyle HorizontalAlign="Center" CssClass="title" VerticalAlign="Middle"></HeaderStyle>
28
<Columns>
29
<asp:BoundColumn DataField="articleid" HeaderText="ID"></asp:BoundColumn>
30
<asp:TemplateColumn HeaderText="新闻标题(点击修改)">
31
<ItemTemplate>
32
<img src="../pic/canedit.gif" align="absMiddle"> <a href='admin_articleEdit.aspx?articleid=<%# DataBinder.Eval(Container.DataItem, "articleid")%>'>
33
<%# DataBinder.Eval(Container.DataItem, "title")%>
34
</a><FONT face="宋体"></FONT>
35
</ItemTemplate>
36
</asp:TemplateColumn>
37
<asp:BoundColumn DataField="classname" HeaderText="所属分类">
38
<ItemStyle HorizontalAlign="Center"></ItemStyle>
39
</asp:BoundColumn>
40
<asp:BoundColumn DataField="username" HeaderText="发布管理员">
41
<ItemStyle HorizontalAlign="Center"></ItemStyle>
42
</asp:BoundColumn>
43
<asp:BoundColumn DataField="hints" HeaderText="点击数">
44
<ItemStyle HorizontalAlign="Center"></ItemStyle>
45
</asp:BoundColumn>
46
<asp:TemplateColumn HeaderText="咨讯属性">
47
<ItemTemplate>
48
<asp:Label ID="property" Runat="server"></asp:Label>
49
</ItemTemplate>
50
</asp:TemplateColumn>
51
<asp:ButtonColumn Text="删除" CommandName="Delete">
52
<ItemStyle HorizontalAlign="Center"></ItemStyle>
53
</asp:ButtonColumn>
54
<asp:TemplateColumn>
55
<ItemTemplate>
56
<IMG src="../pic/canedit.gif" align="absMiddle"> <A href='admin_remark.aspx?articleid=<%# DataBinder.Eval(Container.DataItem, "articleid")%>&classname=<%# DataBinder.Eval(Container.DataItem, "classname")%>' target=_self>
57
评论</A>
58
</ItemTemplate>
59
</asp:TemplateColumn>
60
<asp:TemplateColumn>
61
<ItemTemplate>
62
<asp:LinkButton CommandName='<%# DataBinder.Eval(Container.DataItem, "articleid")%>' OnClick="fixLink_Click" ID="fixLink" Runat=server>固顶</asp:LinkButton>
63
</ItemTemplate>
64
</asp:TemplateColumn>
65
<asp:TemplateColumn>
66
<ItemTemplate>
67
<A href='admin_move.aspx?articleid=<%# DataBinder.Eval(Container.DataItem, "articleid")%>&classname=<%# DataBinder.Eval(Container.DataItem, "classname")%>' target=_self>
68
移动</A>
69
</ItemTemplate>
70
</asp:TemplateColumn>
71
<ASP:TemplateColumn>
72
<ItemTemplate>
73
<asp:LinkButton CommandName='<%# DataBinder.Eval(Container.DataItem, "articleid")%>' OnClick="fixLink_Click" ID="Recommend" Runat=server>推荐</asp:LinkButton>
74
</ItemTemplate>
75
</ASP:TemplateColumn>
76
</Columns>
77
<PagerStyle NextPageText="下一页" PrevPageText="上一页" HorizontalAlign="Right" PageButtonCount="5"></PagerStyle>
78
</ASP:DATAGRID>
79
<table width="680" align="center">
80
<tr>
81
<td width="157">
82
<div align="left"><asp:linkbutton id="btnFirst" onclick="PagerButtonClick" runat="server" ForeColor="HotTrack" Font-Bold="True"
83
CommandArgument="first">首页||</asp:linkbutton><asp:linkbutton id="LinkButton2" onclick="PagerButtonClick" runat="server" ForeColor="HotTrack"
84
Font-Bold="True" CommandArgument="prev">前页||</asp:linkbutton><asp:linkbutton id="Linkbutton3" onclick="PagerButtonClick" runat="server" ForeColor="HotTrack"
85
Font-Bold="True" CommandArgument="next">下页||</asp:linkbutton><asp:linkbutton id="Linkbutton4" onclick="PagerButtonClick" runat="server" ForeColor="HotTrack"
86
Font-Bold="True" CommandArgument="last">尾页</asp:linkbutton></div>
87
</td>
88
<td width="239">
89
<DIV align="right"><asp:label id="lblCurrentIndex" runat="server" ForeColor="HotTrack" Font-Bold="True"></asp:label><asp:label id="lblPageCount" runat="server" ForeColor="HotTrack" Font-Bold="True"></asp:label><asp:button id="Button3" runat="server" Text="Go"></asp:button><asp:dropdownlist id="DropDownList2" runat="server" Width="41px"></asp:dropdownlist></DIV>
90
</td>
91
</tr>
92
</table>
93
</form>
94
</body>
95
</HTML>
96
<%@ Page Language="c#" Inherits="news.admin.admin_article" CodeBehind="admin_article.aspx.cs" AutoEventWireup="false" %>2
<HTML>3
<HEAD>4
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />5
<LINK href="/news/inc/style.css" type="text/css" rel="stylesheet">6
</HEAD>7
<body>8
<div align="center"><asp:label id="myLabel" runat="server" width="100%" ForeColor="Red" Height="2px"></asp:label></div>9
<form id="myForm" action="post" runat="server">10
<div align="center">请选择新闻分类:11
<asp:dropdownlist id="DropDownList1" runat="server" DESIGNTIMEDRAGDROP="30">12
<asp:ListItem Value="全部" Selected="True">全部</asp:ListItem>13
</asp:dropdownlist><asp:button id="Button2" runat="server" Text="确定"></asp:button> 14
新闻搜索: 15
<asp:textbox id="keyword" runat="server"></asp:textbox><asp:dropdownlist id="search" runat="server">16
<asp:ListItem Value="标题" Selected="True">标题</asp:ListItem>17
<asp:ListItem Value="内容">内容</asp:ListItem>18
</asp:dropdownlist> 19
<asp:linkbutton id="LinkButton1" runat="server" Font-Bold="True" Font-Size="Medium" Font-Underline="True">搜 索</asp:linkbutton> 20
<asp:requiredfieldvalidator id="RequiredFieldValidator1" runat="server" ErrorMessage="*请输入搜索内容!" ControlToValidate="search"></asp:requiredfieldvalidator></BUTTON></div>21
<br>22
<ASP:DATAGRID id="MyDataGrid" runat="server" ItemStyle-CssClass="tdbg" HeaderStyle-CssClass="title"23
CssClass="border" DataKeyField="articleid" AutoGenerateColumns="False" CellPadding="3" Align="center"24
Width="750px" AllowPaging="True">25
<EditItemStyle HorizontalAlign="Center" VerticalAlign="Middle"></EditItemStyle>26
<ItemStyle HorizontalAlign="Left" CssClass="tdbg" VerticalAlign="Middle"></ItemStyle>27
<HeaderStyle HorizontalAlign="Center" CssClass="title" VerticalAlign="Middle"></HeaderStyle>28
<Columns>29
<asp:BoundColumn DataField="articleid" HeaderText="ID"></asp:BoundColumn>30
<asp:TemplateColumn HeaderText="新闻标题(点击修改)">31
<ItemTemplate>32
<img src="../pic/canedit.gif" align="absMiddle"> <a href='admin_articleEdit.aspx?articleid=<%# DataBinder.Eval(Container.DataItem, "articleid")%>'>33
<%# DataBinder.Eval(Container.DataItem, "title")%>34
</a><FONT face="宋体"></FONT>35
</ItemTemplate>36
</asp:TemplateColumn>37
<asp:BoundColumn DataField="classname" HeaderText="所属分类">38
<ItemStyle HorizontalAlign="Center"></ItemStyle>39
</asp:BoundColumn>40
<asp:BoundColumn DataField="username" HeaderText="发布管理员">41
<ItemStyle HorizontalAlign="Center"></ItemStyle>42
</asp:BoundColumn>43
<asp:BoundColumn DataField="hints" HeaderText="点击数">44
<ItemStyle HorizontalAlign="Center"></ItemStyle>45
</asp:BoundColumn>46
<asp:TemplateColumn HeaderText="咨讯属性">47
<ItemTemplate>48
<asp:Label ID="property" Runat="server"></asp:Label>49
</ItemTemplate>50
</asp:TemplateColumn>51
<asp:ButtonColumn Text="删除" CommandName="Delete">52
<ItemStyle HorizontalAlign="Center"></ItemStyle>53
</asp:ButtonColumn>54
<asp:TemplateColumn>55
<ItemTemplate>56
<IMG src="../pic/canedit.gif" align="absMiddle"> <A href='admin_remark.aspx?articleid=<%# DataBinder.Eval(Container.DataItem, "articleid")%>&classname=<%# DataBinder.Eval(Container.DataItem, "classname")%>' target=_self>57
评论</A>58
</ItemTemplate>59
</asp:TemplateColumn>60
<asp:TemplateColumn>61
<ItemTemplate>62
<asp:LinkButton CommandName='<%# DataBinder.Eval(Container.DataItem, "articleid")%>' OnClick="fixLink_Click" ID="fixLink" Runat=server>固顶</asp:LinkButton>63
</ItemTemplate>64
</asp:TemplateColumn>65
<asp:TemplateColumn>66
<ItemTemplate>67
<A href='admin_move.aspx?articleid=<%# DataBinder.Eval(Container.DataItem, "articleid")%>&classname=<%# DataBinder.Eval(Container.DataItem, "classname")%>' target=_self>68
移动</A>69
</ItemTemplate>70
</asp:TemplateColumn>71
<ASP:TemplateColumn>72
<ItemTemplate>73
<asp:LinkButton CommandName='<%# DataBinder.Eval(Container.DataItem, "articleid")%>' OnClick="fixLink_Click" ID="Recommend" Runat=server>推荐</asp:LinkButton>74
</ItemTemplate>75
</ASP:TemplateColumn>76
</Columns>77
<PagerStyle NextPageText="下一页" PrevPageText="上一页" HorizontalAlign="Right" PageButtonCount="5"></PagerStyle>78
</ASP:DATAGRID>79
<table width="680" align="center">80
<tr>81
<td width="157">82
<div align="left"><asp:linkbutton id="btnFirst" onclick="PagerButtonClick" runat="server" ForeColor="HotTrack" Font-Bold="True"83
CommandArgument="first">首页||</asp:linkbutton><asp:linkbutton id="LinkButton2" onclick="PagerButtonClick" runat="server" ForeColor="HotTrack"84
Font-Bold="True" CommandArgument="prev">前页||</asp:linkbutton><asp:linkbutton id="Linkbutton3" onclick="PagerButtonClick" runat="server" ForeColor="HotTrack"85
Font-Bold="True" CommandArgument="next">下页||</asp:linkbutton><asp:linkbutton id="Linkbutton4" onclick="PagerButtonClick" runat="server" ForeColor="HotTrack"86
Font-Bold="True" CommandArgument="last">尾页</asp:linkbutton></div>87
</td>88
<td width="239">89
<DIV align="right"><asp:label id="lblCurrentIndex" runat="server" ForeColor="HotTrack" Font-Bold="True"></asp:label><asp:label id="lblPageCount" runat="server" ForeColor="HotTrack" Font-Bold="True"></asp:label><asp:button id="Button3" runat="server" Text="Go"></asp:button><asp:dropdownlist id="DropDownList2" runat="server" Width="41px"></asp:dropdownlist></DIV>90
</td>91
</tr>92
</table>93
</form>94
</body>95
</HTML>96



浙公网安备 33010602011771号