asp.net での 2 つの部分でのグリッド ビューの表示
部門名を表示する 1 つの Gridview を作成しましたが、メンバーはいませんが、このグリッドビューを分割し、同じ列名を持つグリッドビューの 2 つの部分に分割したいと考えています。この問題を解決するアイデアを教えてください。
データソースを変更するだけです
2 つのテーブルのデータセットの値を取得する
任意の列で並べ替えてから、最初のテーブルのフィールド asc で半分のレコード順を取得します
任意の列で並べ替えてから、最初のテーブルのフィールド desc で半分のレコード順を取得します
select
2つのステートメントを書くだけです
gridview1
データセットを 2 つのテーブルで埋めてから、first とgridview2
second でバインドします。
接続 ( ) を使用してレコードを選択します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();