ASP.NET GridView手动控制行数

最近项目中需要gridview动态生成行数,最后解决办法如下: 

 ICollection CreateDataSource()
  {
    System.Data.DataTable dt = new System.Data.DataTable();
    System.Data.DataRow dr;
    dt.Columns.Add(new System.Data.DataColumn("AAA", typeof(System.String)));
    dt.Columns.Add(new System.Data.DataColumn("BBB", typeof(System.String)));
    dt.Columns.Add(new System.Data.DataColumn("CCC", typeof(System.Decimal)));
    dt.Columns.Add(new System.Data.DataColumn("DDD", typeof(System.Decimal)));

    for (int i = 0; i < 10; i++)
    {
      System.Random rd = new System.Random(Environment.TickCount * i); ;
      dr = dt.NewRow();
      dr[0] = "TEST" + i.ToString();
      dr[1] =  i.ToString();
            dt.Rows.Add(dr);
    }
    System.Data.DataView dv = new System.Data.DataView(dt);
    return dv;
  }

    int TotalRowCount = 12;
  // 自动填充行数
  int numCount = 0;
  protected void Page_Load(object sender, EventArgs e)
  {
    if (!Page.IsPostBack)
    {
        GridView1.DataSource = CreateDataSource();
      GridView1.DataBind();
    }
  }

  protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
  {
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
      numCount++;
    }
    if (e.Row.RowType == DataControlRowType.Footer)
    {
      int toLeft = TotalRowCount - numCount;
      int numCols = GridView1.Rows[0].Cells.Count;

      for (int i = 0; i < toLeft; i++)
      {
        GridViewRow row = new GridViewRow(-1, -1, DataControlRowType.EmptyDataRow, DataControlRowState.Normal);
        for (int j = 0; j < numCols; j++)
        {
          TableCell cell = new TableCell();
          cell.Text = " ";
          row.Cells.Add(cell);
        }
        GridView1.Controls[0].Controls.AddAt(numCount + 1 + i, row);
      }
    }
  }

时间: 2024-10-31 15:55:05

ASP.NET GridView手动控制行数的相关文章

c# dev gridview-【DEV控件】如何保存行数动态增加的gridview内容?

问题描述 [DEV控件]如何保存行数动态增加的gridview内容? gridview表的行数动态增加,单不管多少行,我都要一次性将所有不为空的行的内容插入到数据库 请问以上操作应该如何处理? 自己想的是,根据gridview的行数循环判断,将不为空的内容逐一插入到数据库里,这个方法可行吧?

asp实现获取MSSQL数据库表指定条件行数的函数

 这篇文章主要介绍了asp实现获取MSSQL数据库表指定条件行数的函数的的相关资料,需要的朋友可以参考下       代码如下: '数据库表行数函数,这是取表的行数 Function GetTblRows(TblName) '如果TblName表名值为空,则 if TblName="" Then GetTblRows="未知TblName" exit Function Else set rec = server.createobject("adodb.re

asp.net C#中怎样接受SQL 返回select受影响的行数

asp教程.net C#中怎样接受SQL 返回select受影响的行数 '实例二 OleDbCommand command = new OleDbCommand(select count(*) from biao where name="张三" ,conn);   OleDbDataReader reader = command.ExecuteReader();       if (reader.Read())   {   strValue = (string)reader.GetVa

关于在Asp.net中子页面的GridView某行传值给父页面GridView中某行的问题

问题描述 自己做了一个测试,在父页面有一个GridView,有一个"插入新行"的按钮,当点击按钮将会显示GridView的脚注Footer,通过脚注来增加一行,在字段列"产品小类名称"里有一个弹出子页面的按钮,当点击这个按钮就会弹出子页面产品小类名称的GridView,当点击GridView某行,就把数据传递到父页面的GridView的脚注行.我在父页面用的是window.open(),而不是showModalDialog()(不需要用模态窗体),但当我点击双击子页

asp.net 长文章通过设定的行数分页_实用技巧

复制代码 代码如下: public string OutputByLine(string strContent)//通过设定的行数分页 { int pageSize = int.Parse(ConfigurationManager.AppSettings["pageSize"]);//每页显示行数从CONFIG文件中取出 string lineBreak = ConfigurationManager.AppSettings["lineBreak"];//换行符从CO

asp实现获取MSSQL数据库表指定条件行数的函数_应用技巧

复制代码 代码如下: '数据库表行数函数,这是取表的行数 Function GetTblRows(TblName)     '如果TblName表名值为空,则     if TblName="" Then        GetTblRows="未知TblName"     exit Function     Else        set rec = server.createobject("adodb.recordset")        SQ

对GridView的行加颜色并弹出Kindeditor的实现思路_实用技巧

前台代码: 复制代码 代码如下: <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> <script type="text/javascript"> function tureDelete() { if (c

asp.net GridView 中增加记录的方法_实用技巧

大多数人建议用 FormView 来完成增加记录的功能,但是 FormView 和 GridView 不是同一个表格,所以无法在同一个页面的同一个表格中显示.如果故意将 FormView 或自己的一堆于用新增功能的控件使用普通的表格组装起来,那么会碰到一个很麻烦的问题,即两个表格的列宽如何协调一致,大多数情况下,大家在做表格的时候,表格中各列的宽度都是自动调整的,所以强行指定宽度在很多情况下并不适用. 通过实践,想出了一种办法,主要步骤如下所示: 1) 在 GridView 的 EmptyDat

ASP.NET GridView获取值

问题描述 <asp:GridViewID="GridView1"runat="server"OnRowCommand="GridView1_Itemcommand">--<Columns><asp:TemplateFieldHeaderText="选择"><ItemTemplate><asp:LabelID="Label1"runat="ser