1,添加checkboxchanged事件
2,checkboxchanged事件获取当前行号:
EditIndex = Convert.ToInt32(e.CommandArgument.ToString());
GridView1.EditIndex = Convert.ToInt32(e.CommandArgument.ToString());
3,在gridview里面添加一个字段,设置为TemplateField
4,在模板编辑模式的EditItemTemple里面放三个按钮,并分别添加他们事件。事件结束别忘记把EditIndex=-1
要代码没有,不过思想可以借鉴一下。
第一种:使用.NET控件回传
单击checkbox之后,自动回发到后台,然后运行
优点,处理方便
缺点,速度太慢
具体方案:第一列:Checkbox,第二列:label+textbox。。。。第N列,[确定,取消,编辑]。。。
开始的时候,可以让textbox.visible=false,然后回传的时候,让textbox.visible=checkbox, label.visible=!checkbox
第二种:用.net ajax控件,updatepanel完成,相比之下会比第一种用户体验好一些。
优点:处理方便
缺点,暂时没想到,不过速度比第一种稍快
具体方案就是把数据控件放到updatepanel中。
第三种,用jquery
优点:用户体验高,执行速度快,因为一切都是在客户端中自动完成,直到保存数据之前,都不与服务器进行任何的通信。
缺点:代码复杂,如果写不好,数据会保存不上
具体方案,不论是.NET中多么花哨的空间,到客户端都会变成HTML的基本标记。
checkbox==》
label==>
建议到msdn搜一下gridView的增删改查即可,利用后台时间可以完成..xtnxing的回答也可以,但是你要知道gridView生成到client的html代码也是table结构的,你可以直接操作table来实现,网上的例子一大堆...
我做个这个。很好做的。不用回传到后来。因为会刷新很严重。自己看了别不舒服。更别说用户体验了。我当初用的是Ajax+jq。。建议你用这个吧。用一般处理程序