.net gridview显示这样的效果,批量处理前面打钩的数据,怎么操作

.netgridview显示这样的效果,批量处理前面打钩的数据,怎么操作... .net gridview显示这样的效果,批量处理前面打钩的数据,怎么操作 展开
 我来答
懒汉有福音
2013-11-05 · 超过48用户采纳过TA的回答
知道小有建树答主
回答量:127
采纳率:0%
帮助的人:112万
展开全部

更新或者删除,是根据是否打钩,然后根据信息ID来删除信息。单单打钩,怎么根据,删除或更新数据库?


你这里要在数据绑定的时候指定当前行的Key为你的 “信息ID”。

比如在一个列里面放入一个HiddenField1控件,然后绑定为你的ID。


以下代码,查找控件的路径不一定适合你,请自己修改成你自己的列、行数据。

foreach (GridViewRow row in gvLog.Rows)
        {
//找到控件,确认是否勾选了
            if (((CheckBox)row.Cells[0].FindControl("CheckBox1")).Checked)
            {
//找到保存的Id,
                string id = ((HiddenField)row.Cells[0].FindControl("HiddenField1")).Value.ToString();
               //在这里你可进行你想要的操作了
            }
        }

另外,网上有个自定义控件,就是修改后的GridView,它里面已 集成了你提到功能,可以下回来试试。名字不记得了。

zwbalz
2013-10-25 · TA获得超过253个赞
知道小有建树答主
回答量:439
采纳率:50%
帮助的人:253万
展开全部
循环获取gridview中的CheckBox,通过全选ChenckBox的状态为GridView内的CheckBox赋值!!
更多追问追答
追答

要获取gv内的checkbox

首先声明一个checkbox对象

System.Web.UI.WebControls.CheckBox cbk;
for(int i=0;i<this.gridview.Rows.Count;i++)
{
   //获取GridView的行数,通过行数循环获取GridView中的CheckBox控件
   foreach(controls ctl in this.gridview.Rows[i].Cells[0].Controls)
   {
      //这里的Cells[0]表示CheckBox控件在GridView的第一列。如果在其他列请用响应的列序号
      if(ctl.ID!="" && ctl.GetType().ToString()=="CheckBox")
      {
          //创建CheckBox对象,为GridView控件内的CheckBox控件
          cbk=(CheckBox)this.gridview.rows[i].cells[0].FindControl(ctl.ID.tostring());
          //根据外面的CheckBox的状态更改gridview内的CheckBox状态
          if(checkbox1.checked==true)
          {
             //如果全选的CheckBox打钩
             cbk.checked=true;
          }
          else
          {
             //如果全选的CheckBox未打钩
             cbk.checked=false;
          }
       }
   }
}

不知道你想获取CheckBox的什么信息??

追问
更新或者删除,是根据是否打钩,然后根据信息ID来删除信息。单单打钩,怎么根据信息ID,删除或更新数据库?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式