如何在gridview中使用Checkbox来显示数据

时间:2012-03-27 08:28:57

标签: asp.net sql-server-2005

我在第一个中有两个Gridview,有一些带复选框的数据。我想当我检查两个或更多复选框,然后显示两个记录谁检查到另一个gridview有我的编码。问题是它一次只显示一条记录..

    protected void CheckBox1_CheckedChanged(object sender, EventArgs e)

    {

    foreach(GridViewRow row in GridView1.Rows)

    {

     if (row.RowType == DataControlRowType.DataRow )

      {

       CheckBox chkSelect = (CheckBox)row.Cells[0].FindControl("CheckBox1");

       if (chkSelect != null)

       {

         if (chkSelect.Checked)

         {

           string FoodItem = ((Label)row.FindControl("Label1")).Text.ToString(); 
           string s = "select * from Item where Item_Name='" + FoodItem + "' "; 
           db.grid(s, GridView2);

         }

       }

    }

  }

1 个答案:

答案 0 :(得分:1)

查看代码,

首先想到在检查每个复选框的checked属性后立即绑定gridview,它将覆盖gridview2。首先通过concinating say FoodItem =“(value1,value2,value3)”收集所有复选框值。

通过修改

等查询来调用数据库一次
string s = "select * from Item where Item_Name in " + FoodItem +"; 
db.grid(s, GridView2); 

我认为您有多个选择,因此请保持单独的按钮并将所有代码写入按钮点击事件中的一个网格复制到另一个网格。