Сравнение 2 GridViews в asp.net - PullRequest
0 голосов
/ 10 октября 2011

Как я могу сравнить информацию в 2 GridViews , и когда я нажимаю кнопку сравнения, информация, которая не совпадает, появится в другом представлении данных?

Например, информация. в первом datagridview это 12345 второе представление данных - 1234567 затем, когда я нажимаю кнопку сравнения, 67 появится в другом обзоре данных.

Заранее спасибо!

1 Ответ

1 голос
/ 10 октября 2011

Вы можете сделать что-то вроде этого

  1. В приведенном ниже коде назначьте источник данных для видов сетки

    protected void Page_Load (отправитель объекта, EventArgs e) {if (!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();
    }
    

    }

  2. Нажмите кнопку сравнения, чтобы выполнить сравнение.

    protected void btn_Click (отправитель объекта, 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();
    }
    

    }

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...