网格视图显示在 asp.net 中的两部分
我创建了一个 Gridview 来显示部门名称并且没有成员,但我想拆分此 gridview 并拆分为具有相同列名的 gridview 的两个部分。请给我解决这个问题的想法。
你可以简单地修改你的数据源
在两个表中获取数据集中的值
按任何列排序,然后按第一个表中的字段 asc 获得半记录顺序
按任何列排序,然后按第一个表中的字段 desc 获得半记录顺序
只需要写两条select
语句
它将用两个表填充数据集,然后gridview1
与第一个和gridview2
第二个绑定。
使用连接 ( sqlCn
) 选择记录。
创建临时数据表 ( dtTemp
)
sqlDA
使用数据适配器 ( )填充它
创建一个新的数据表 ( dt
)
添加列 ( colA1
, colB1
, colA2
, colB2
)
在一个循环中,创建一个数据行 ( 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();
标准的 ASP.Net GridView 组件无法做到这一点。您可以尝试通过两个 GridView 或一些 3rd 方组件来完成。