如何比較2 GridViews中的信息,當我點擊按鈕比較時,不同的信息會出現在另一個datagridview中?比較asp.net中的2個GridViews
例如信息。在第一個datagridview是12345 第二個datagridview是1234567 然後,當我點擊比較按鈕時, 67會出現在另一個datagridview中。
在此先感謝!
如何比較2 GridViews中的信息,當我點擊按鈕比較時,不同的信息會出現在另一個datagridview中?比較asp.net中的2個GridViews
例如信息。在第一個datagridview是12345 第二個datagridview是1234567 然後,當我點擊比較按鈕時, 67會出現在另一個datagridview中。
在此先感謝!
你可以做這樣的事情
在後面的代碼分配的數據源GridView的
保護無效的Page_Load(對象發件人,EventArgs的){ 如果 (!Page.IsPostBack) { List lists1 = new List();
lists1.Add(1);
lists1.Add(12345);
lists1.Add(234354);
lists1.Add(3421);
lists1.Add(2343);
g1.DataSource = lists1;
g1.DataBind();
List<int> lists2 = new List<int>();
lists2.Add(1);
lists2.Add(1234567);
lists2.Add(234354);
lists2.Add(334421);
lists2.Add(2343343);
g2.DataSource = lists2;
g2.DataBind();
}
}
在比較按鈕點擊做比較。
protected void btn_Click(object sender,EventArgs e) List newLists = new List();
//iterate first gridview
foreach (GridViewRow row1 in g1.Rows)
{
if (row1.RowType == DataControlRowType.DataRow)
{
string gv1Value = row1.Cells[0].Text;
//iterate second gridview
foreach (GridViewRow row2 in g2.Rows)
{
if (row2.RowType == DataControlRowType.DataRow)
{
string gv2Value = row2.Cells[0].Text;
//do comparison here
if (gv1Value.Contains(gv2Value))
{
//if your criteria are met, put the data in the new lists
newLists.Add(Convert.ToInt32(gv1Value));
}
}
}
}
}
if (newLists.Count > 0)
{
g3.DataSource = newLists;
g3.DataBind();
}
}
希望這有助於
這段代碼的結果不是我想要的,反之亦然。我想要的結果是在兩張表中找到他們的差異不是相同的數字。並感謝您的代碼:) –
如果我將放入gridview 1&2的數據來自sqldatasource,該怎麼辦?我將更改哪些代碼?非常感謝你 –
你能告訴你2個GridView的標記?你到底嘗試了哪些代碼來比較它們? – jadarnel27