[Asp.Net+C#]Datagrid使用技巧五(设置DataGrid的pager格式)

  /// <summary>
  /// 设置DataGrid的pager格式
  /// </summary>
  /// <param name="dgMain">需要处理的DataGrid</param>
  /// <param name="e">DataGride的ItemCreated事件参数</param>
  public static void DataGridPageSet(DataGrid dgMain, System.Web.UI.WebControls.DataGridItemEventArgs e)
  {
   if(e.Item.ItemType!=ListItemType.Pager)
   {
    return;
   }
   TableCell pager = (TableCell)(e.Item.Controls[0]);
   for (int i=0; i<pager.Controls.Count; i+=2)
   {
    Control o = pager.Controls[i];
    if (o is LinkButton)
    {//其他页
     LinkButton h = (LinkButton) o;
     h.Font.Underline=true;
    }
    else
    {
     //当前页
     Label l = (Label) o;
     l.ForeColor=Color.FromKnownColor(KnownColor.Red);
    }
   }
   StringBuilder strb=new StringBuilder("<table width=100%><tr><td width=50% align=left>");
   pager.Controls.AddAt(0,new LiteralControl(strb.ToString()));
   strb.Remove(0,strb.Length);
   int totalCount=0;
   if(dgMain.AllowCustomPaging==true)
   {
    totalCount=dgMain.VirtualItemCount;
   }
   else
   {
    if (dgMain.DataSource is DataTable)
    {
     totalCount=((DataTable)(dgMain.DataSource)).Rows.Count;
    }
    else if(dgMain.DataSource is DataView)
    {
     totalCount=((DataView)(dgMain.DataSource)).Table.Rows.Count;
    }
   }
   strb.AppendFormat("</td><td width=50% align=right>第<font color=red>{0}</font>页 共{1}页 共{2}条记录</td></tr></table>", dgMain.CurrentPageIndex+1 ,dgMain.PageCount,totalCount);
   pager.Controls.Add(new LiteralControl(strb.ToString()));
   return;
  }

转载于:https://www.cnblogs.com/JimZhang/archive/2005/08/31/226614.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值