CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

您现在的位置: IT专家网 > Web服务子站 > .NET技术

asp.net中显示DataGrid控件列序号的方法

作者: 佚名,  出处:中国IT实验室, 责任编辑: 包春林, 
2008-05-16 04:00
  在aps.net中多数据绑定的控件很多,论功能来说,应该属DataGrid最为齐全,但它没有提供现成的显示记录序号的功能,不过我们可以通过它所带的一些参数来间接得到序号......

  后台WebFormPaging.aspx.cs代码如下:

  

      using System;

  using System.Collections;

  using System.ComponentModel;

  using System.Data;

  using System.Drawing;

  using System.Web;

  using System.Web.SessionState;

  using System.Web.UI;

  using System.Web.UI.WebControls;

  using System.Web.UI.HtmlControls;

  namespace AspnetPaging

  {

  public class WebForm1 : System.Web.UI.Page

  {

  private int recordCount = 0;

  protected System.Web.UI.WebControls.DataGrid DataGrid1;

  private void Page_Load(object sender, System.EventArgs e)

  {

  if(!Page.IsPostBack)

  {

  DataGridDataBind();

  }

  }

  //绑定数据

  private void DataGridDataBind()

  {

  DataSet ds = DataAccess.GetCustomersData();

  this.DataGrid1.DataSource = ds;

  this.DataGrid1.DataBind();

  }

  #region Web 窗体设计器生成的代码

  override protected void OnInit(EventArgs e)

  {

  InitializeComponent();

  base.OnInit(e);

  }

  /// < summary>

  /// 设计器支持所需的方法 - 不要使用代码编辑器修改

  /// 此方法的内容。

  /// < /summary>

  private void InitializeComponent()

  {

  this.DataGrid1.ItemCreated += new System.Web.UI.WebControls.DataGridItemEventHandler(this.DataGrid1_ItemCreated);

  this.DataGrid1.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.DataGrid1_PageIndexChanged);

  this.DataGrid1.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.DataGrid1_ItemDataBound);

  this.Load += new System.EventHandler(this.Page_Load);

  }

  #endregion

  //翻页

  private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)

  {

  DataGrid1.CurrentPageIndex = e.NewPageIndex;

  DataGridDataBind();

  }

  //获取当前项

  protected int GetRecordIndex(int itemIndex)

  {

  return (DataGrid1.CurrentPageIndex * DataGrid1.PageSize + itemIndex + 1);

  }

  private void DataGrid1_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)

  {

  DataGrid dg = (DataGrid)sender;

  if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)

  {

  e.Item.Cells[0].Text = (dg.CurrentPageIndex * dg.PageSize + e.Item.ItemIndex + 1).ToString();

  e.Item.Cells[1].Text = (dg.CurrentPageIndex * dg.PageSize + e.Item.ItemIndex + 1).ToString();

  }

  }

  private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)

  {

  DataGrid dg = (DataGrid)sender;

  if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)

  {

  ((Label)e.Item.FindControl("itemIndex")).Text = (dg.CurrentPageIndex * dg.PageSize + e.Item.ItemIndex + 1).ToString();

  }

  }

  }

  }

共4页。 9 1 2 3 4 :

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅

       
天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i