将Gridview拆分为列的两部分

时间:2013-07-08 07:23:33

标签: c# asp.net .net gridview

网格视图在asp.net enter image description here

中的两部分中显示

我创建了一个Gridview来显示部门名称而且没有成员但我想拆分这个gridview并拆分成gridview的两个部分,同样的列名也。 请给我解决这个问题的想法。

3 个答案:

答案 0 :(得分:0)

标准的ASP.Net GridView组件无法做到这一点。您可以尝试通过两个GridView或某些第三方组件来完成它。

答案 1 :(得分:0)

使用连接选择记录(sqlCn)。

创建临时数据表(dtTemp

使用数据适配器(sqlDA

填写

创建新的数据表(dt

添加列(colA1colB1colA2colB2

在循环中,创建数据行(dr)并使用dtTemp的数据填充其单元格,然后将dr添加到dt

使用datagridview(DataGridView1)绑定它。

    SqlConnection sqlCn = new SqlConnection( ConfigurationManager.ConnectionStrings[ "myConStr" ].ConnectionString );
    SqlDataAdapter sqlDA = new SqlDataAdapter( "SELECT col1, col2 FROM Table1", sqlCn );
    DataTable dtTemp = new DataTable();
    DataTable dt = new DataTable();

    sqlDA.Fill( dtTemp );

    //Create columns for dt
    dt.Columns.Add( "colA1", typeof( String ) );
    dt.Columns.Add( "colA2", typeof( String ) );
    dt.Columns.Add( "colB1", typeof( String ) );
    dt.Columns.Add( "colB2", typeof( String ) );


    for ( int i = 0; i < dtTemp.Rows.Count; i++ )
    {
        DataRow dr = dt.NewRow();//create a new datarow  for dt

        dr["colA1"] = dtTemp.Rows[i]["col1"];
        dr["colA2"] = dtTemp.Rows[i]["col2"];

        i++; //move to next line

        dr["colB1"] = dtTemp.Rows[i]["col1"];
        dr["colB2"] = dtTemp.Rows[i]["col2"];

        dt.Rows.Add( dr );
    }

    //Show the grid 
    GridView1.DataSource = dt;
    GridView1.DataBind();

答案 2 :(得分:0)

您只需修改数据源

即可

在两个表格中获取数据集中的值

按任意列顺序,然后按第一个表中的字段asc获取半记录顺序

按任意列顺序,然后按第一个表中的字段desc获得半记录顺序

只需编写两个select语句

它将用两个表填充数据集 然后将gridview1与第一个gridview2和第二个{{1}}绑定。