首页 > 代码库 > datagridview中使用checkbox问题。
datagridview中使用checkbox问题。
如果套用datagridview中的checkboxfield,生成的数据,会出现无法选择datagridview中数据项的问题,即checkbox不可以被鼠标点击,选中/取消选中。此checkbox的选中与否,完全取决于数据库,表中的bool值得类型,当值为true的时候,生成的datagridview中的checkbox是处于勾选状态的,要想取消勾选,需要通过sql语句,来修改后台数据库表中的对应字段的值(把true改成false)。这种方法比较烦。
另一种比较好的做法是在datagridview中增加一个templatefield,然后再在下面添加itemtemplate,在该itemtemplate中,增加checkbox控件。
<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False" EnableModelValidation="True" style="width: 13px" > <Columns> <asp:TemplateField> <ItemTemplate> <asp:CheckBox id="chk" runat="server"/> </ItemTemplate> <ItemStyle HorizontalAlign="Center" /> </asp:TemplateField> <asp:BoundField DataField="USERID" HeaderText="代理设定" > <ItemStyle HorizontalAlign="Center" /> </asp:BoundField> </Columns> </asp:GridView>
这样生成的checkbox控件就可以被选中了。选中的checkbox控件,如何取值?
可以循环遍历datagridview中的rows,然后将值checkbox为true的值取出即可。
bool result = false; List<string> name=new List<string> (); for (int i = 0; i < GridView2.Rows.Count;i++ ) { result = ((CheckBox)GridView2.Rows[i].FindControl("chk")).Checked; if (result) name.Add(GridView2.Rows[i].Cells[1].Text.Trim()); }
datagridview中使用checkbox问题。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。