GridView 批量删除,自定义分页,定位页码

转自http://www.cnweblog.com/maomao2008/archive/2007/01/05/195167.html

GridView 批量删除,自定义分页,定位页码

gridview.gif
前台代码:
< table  width ="100%"  height ="20"  border ="1"  align ="center"  cellpadding ="0"  cellspacing ="0"  bordercolorlight ="#FFFFFF"  bordercolordark ="#E6E6E6"  bgcolor ="#FFFFFF" >  
< tr  bgcolor ="#FFFFFF" >  
< td  width ="7%"  align ="center" >  
< asp:CheckBox  ID ="cbAll"  runat ="server"  AutoPostBack ="True"  OnCheckedChanged ="cbAll_CheckedChanged"   /></ td >  
< td  width ="8%"  align ="center" >< img  src ="images/bz.gif"  width ="6"  height ="11" ></ td >  
< td  width ="9%"  align ="center" >< img  src ="images/mail.gif"  width ="14"  height ="11" ></ td >  
< td  width ="16%"  align ="center" > 发件人 </ td >  
< td  width ="39%"  align ="center" > 标题 </ td >  
< td  width ="21%"  align ="center" > 日期 </ td >  
</ tr ></ table >  

< asp:GridView  ID ="GridView1"  runat ="server"  AutoGenerateColumns ="False"  
BackColor
="White"  BorderColor ="#CC9966"  BorderWidth ="1px"  CellPadding ="4"  
DataKeyNames
="id"  HorizontalAlign ="Center"  
Width
="100%"  BorderStyle ="None"  ShowHeader ="False"  AllowPaging ="True"  OnDataBound ="GridView1_DataBound" >  

< FooterStyle  BackColor ="#FFFFCC"  ForeColor ="#330099"   />  
< Columns >  
< asp:TemplateField  >  
< ItemStyle  HorizontalAlign ="Center"   />  
< ItemTemplate >  
< asp:CheckBox  ID =cb  runat =server  />  
</ ItemTemplate >  
</ asp:TemplateField >  
< asp:ImageField  HeaderImageUrl ="images/bz.gif" >  
< ItemStyle  Width ="8%"   />  
</ asp:ImageField >  
< asp:TemplateField  HeaderImageUrl ="images/mail.gif" >  
< ItemTemplate >  
< img  src =<%#  Eval("view").ToString() =="0"?"images/mailread.gif":"images/mail.gif"  % >  border=0 align=middle /> 
</ ItemTemplate >  
< ItemStyle  HorizontalAlign ="Center"  Width ="9%"   />  
</ asp:TemplateField >  
< asp:BoundField  DataField ="email"  HeaderText ="发件人" >  
< ItemStyle  Width ="16%"   />  
</ asp:BoundField >  
< asp:HyperLinkField  DataNavigateUrlFields ="id"  DataNavigateUrlFormatString ="viewmail.aspx?id={0}"  
DataTextField
="title"  HeaderText ="标题"   >  
< ItemStyle  Width ="39%"   />  
</ asp:HyperLinkField >  
< asp:BoundField  DataField ="date"  DataFormatString ="{0:d}"  HeaderText ="日期" >  
< ItemStyle  Width ="21%"   />  
</ asp:BoundField >  
</ Columns >  
< PagerTemplate >  

</ PagerTemplate >  
< SelectedRowStyle  BackColor ="#FFCC66"  ForeColor ="#663399"  Font-Bold ="True"   />  
< PagerStyle  BackColor ="#FFFFCC"  ForeColor ="#330099"  HorizontalAlign ="Center"   />  
< HeaderStyle  BackColor ="#990000"  Font-Bold ="True"  ForeColor ="#FFFFCC"   />  
< RowStyle  BackColor ="White"  ForeColor ="#330099"   />  
</ asp:GridView >  
< table  width ="100%"  height ="20"  border ="1"  cellpadding ="0"  cellspacing ="0"  bordercolorlight ="#FFFFFF"  bordercolordark ="#E6E6E6"  bgcolor ="#FFFFFF" >  
< tr >< td >  
< asp:Button  ID ="Button1"  runat ="server"  Text ="全选"  OnClick ="Button1_Click"   /> &nbsp;  
< asp:Button  ID ="Button2"  runat ="server"  Text ="删除"  OnClick ="Button2_Click"   /></ td >  
< td  align =right >  
< asp:LinkButton  ID ="lnkbtnFrist"  runat ="server"  OnClick ="lnkbtnFrist_Click" > 首页 </ asp:LinkButton >  
< asp:LinkButton  ID ="lnkbtnPre"  runat ="server"  OnClick ="lnkbtnPre_Click" > 上一页 </ asp:LinkButton >  
< asp:Label  ID ="lblCurrentPage"  runat ="server" ></ asp:Label >  
< asp:LinkButton  ID ="lnkbtnNext"  runat ="server"  OnClick ="lnkbtnNext_Click" > 下一页 </ asp:LinkButton >  
< asp:LinkButton  ID ="lnkbtnLast"  runat ="server"  OnClick ="lnkbtnLast_Click" > 尾页 </ asp:LinkButton >  
跳转到第
< asp:DropDownList  ID ="ddlCurrentPage"  runat ="server"  AutoPostBack ="True"  OnSelectedIndexChanged ="DropDownList1_SelectedIndexChanged" >  
</ asp:DropDownList > </ td >  
</ tr ></ table >  
后台代码:
void  DataBinds() 

if (!opMail.ReceiveGetList(userid)) 

base.MessageBox(string.Empty, opMail.strErrMsg); 
}
 
else 

this.GridView1.DataSource = opMail.dataView; 
this.GridView1.DataBind(); 
}
 

this.ddlCurrentPage.Items.Clear(); 
for (int i = 1; i <= this.GridView1.PageCount; i++

this.ddlCurrentPage.Items.Add(i.ToString()); 
}
 
this.ddlCurrentPage.SelectedIndex = this.GridView1.PageIndex; 
}
 
// 全选checkbox 
protected   void  Button1_Click( object  sender, EventArgs e) 

foreach (GridViewRow row in GridView1.Rows) 

((CheckBox)row.Cells[
0].FindControl("cb")).Checked = true
}
 
}
 
// 删除所选 
protected   void  Button2_Click( object  sender, EventArgs e) 

for (int rowindex = 0; rowindex < this.GridView1.Rows.Count; rowindex++

if (((CheckBox)this.GridView1.Rows[rowindex].Cells[0].FindControl("cb")).Checked == true

//删除Convert.ToInt32(this.GridView1.DataKeys[rowindex].Value) 
if (!opMail.ReceiveDelete(Convert.ToInt32(this.GridView1.DataKeys[rowindex].Value))) 

base.MessageBox(string.Empty, opMail.strErrMsg); 
}
 
}
 
}
 
DataBinds(); 
}
 
protected   void  GridView1_PageIndexChanging( object  sender, GridViewPageEventArgs e) 

this.GridView1.PageIndex = e.NewPageIndex; 
DataBinds(); 
}
 
protected   void  cbAll_CheckedChanged( object  sender, EventArgs e) 

if (this.cbAll.Checked == true

foreach (GridViewRow row in GridView1.Rows) 

((CheckBox)row.Cells[
0].FindControl("cb")).Checked = true
}
 
}
 
else 

foreach (GridViewRow row in GridView1.Rows) 

((CheckBox)row.Cells[
0].FindControl("cb")).Checked = false
}
 
}
 
}
 
protected   void  DropDownList1_SelectedIndexChanged( object  sender, EventArgs e) 

this.GridView1.PageIndex = this.ddlCurrentPage.SelectedIndex; 
DataBinds(); 
}
 
protected   void  lnkbtnFrist_Click( object  sender, EventArgs e) 

this.GridView1.PageIndex = 0
DataBinds(); 
}
 
protected   void  lnkbtnPre_Click( object  sender, EventArgs e) 

if (this.GridView1.PageIndex > 0

this.GridView1.PageIndex = this.GridView1.PageIndex - 1
DataBinds(); 
}
 
}
 
protected   void  lnkbtnNext_Click( object  sender, EventArgs e) 

if (this.GridView1.PageIndex < this.GridView1.PageCount) 

this.GridView1.PageIndex = this.GridView1.PageIndex + 1
DataBinds(); 
}
 
}
 
protected   void  lnkbtnLast_Click( object  sender, EventArgs e) 

this.GridView1.PageIndex = this.GridView1.PageCount; 
DataBinds(); 
}
 
protected   void  GridView1_DataBound( object  sender, EventArgs e) 

this.lblCurrentPage.Text = string.Format("当前第{0}页/总共{1}页"this.GridView1.PageIndex + 1this.GridView1.PageCount); 
}

 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值