gridview中checkbox不可选

Qu-俊 2012-05-16 08:42:06
 protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
this.Label1.Text = "";
CheckBox ck = (CheckBox)this.GridView1.Rows[e.RowIndex].Cells[4].Controls[0];

bool b = ck.Checked;
if (!b)
{
string uname = this.GridView1.Rows[e.RowIndex].Cells[1].Text.ToString();
string date = this.GridView1.Rows[e.RowIndex].Cells[3].Text.ToString();
string num = this.GridView1.Rows[e.RowIndex].Cells[2].Text.ToString();

if (bs.doProcedure("exec prc_addcoins '" + uname + "','" + date + "'," + num))
{
this.Label1.Text = "<script>alert('处理成功')</script>";
this.fillTable();
}
}
else
{
this.Label1.Text = "<script>alert('已经处理')</script>";


本人想在gridview中增加checkbox选中后更新数据功能,但调试后checkbox不可选,求各位大虾帮忙求解。
...全文
222 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
HopeInHeart 2012-05-16
  • 打赏
  • 举报
回复
除了代码之外,还有一个很细节的问题,就是当datagridview设为ReadOnly属性时候,添加的CheckBox是不可选的,所以不能把dataGridView设为只读的
孟子E章 2012-05-16
  • 打赏
  • 举报
回复
给你个例子
<%@ Page Language="C#" AutoEventWireup="true" Debug="true" EnableViewState="true" %>

<script runat="server">

protected void Page_Load(object sender, EventArgs e)
{
System.Data.DataTable dt = new System.Data.DataTable();
if (!Page.IsPostBack)
{
System.Data.DataRow dr;
dt.Columns.Add(new System.Data.DataColumn("aa", typeof(System.String)));
dt.Columns.Add(new System.Data.DataColumn("vv", typeof(System.Boolean)));
System.Random rd = new System.Random();
for (int i = 0; i < 8; i++)
{
dr = dt.NewRow();
dr[0] = i.ToString();
dr[1] = i;

dt.Rows.Add(dr);
}

GridView1.DataSource = dt;
GridView1.DataBind();
}

}

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
CheckBox ck = (CheckBox)e.Row.Cells[1].Controls[0];
ck.Enabled = true;
}
}


protected void Button1_Click(object sender, EventArgs e)
{
foreach (GridViewRow x in GridView1.Rows)
{
CheckBox ck = (CheckBox)x.Cells[1].Controls[0];
if (ck.Checked)
{
Response.Write("<li>删除:aa=" + x.Cells[0].Text);
}
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:GridView ID="GridView1" runat="server" OnRowDataBound="GridView1_RowDataBound">
</asp:GridView>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="删除所选的行" />
</form>
</body>
</html>

孟子E章 2012-05-16
  • 打赏
  • 举报
回复
如果你不想改模板列,你可以这样
CheckBox ck = (CheckBox)this.GridView1.Rows[e.RowIndex].Cells[4].Controls[0];
ck.Enabled=true;
孟子E章 2012-05-16
  • 打赏
  • 举报
回复
使用模板列,不要使用绑定列进行FindControl是最好的方法
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" />
</ItemTemplate>
</asp:TemplateField>

另外,RowDeleting无需查找CheckBox就可以实现的
IT-Style 2012-05-16
  • 打赏
  • 举报
回复

CheckBox ck = (CheckBox)this.GridView1.Rows[e.RowIndex].FindControl("controlName");


这样试一试
Qu-俊 2012-05-16
  • 打赏
  • 举报
回复
Qu-俊 2012-05-16
  • 打赏
  • 举报
回复
第7章 数据绑定控件 300 7.1 数据绑定技术 301 实例188 格式化订货金额和订单日期并 进行绑定 301 实例189 使用绑定表达式高亮显示搜索关键字 302 实例190 Eval()绑定图书图片并实现单击图片 进行链接 304 实例191 Eval()方法绑定日志并用“…”代替 超长内容 305 实例192 双向绑定Bind()方法实现更新最新 电影信息 306 实例193 绑定DataTable对象显示银行月利息 及本息 307 7.2 GridView控件基本应用 308 实例194 GridView数据绑定并实现自带 分页功能 308 实例195 实现、编辑和删除GridView的 商品信息 310 实例196 供求信息网审核发布信息 (审核权限设置) 312 实例197 获取GridView控件隐藏的列值 314 实例198 在GridView控件实现商品信息 自动编号 315 实例199 GridView绑定数据为空时的界面设计 316 实例200 GridView强制换行显示论坛帖子的 详细信息 317 实例201 查看GridView当前行绑定的商品 详细信息 319 实例202 GridView框绑定列设置商品 是否上架 320 实例203 使用主题来设置GridView控件的外观 322 7.3 GridView控件72般绝技 323 实例204 实现搜索GridView多个关键字高亮 显示 323 实例205 高亮显示数据行并实现双击数据行 弹出新窗口 325 实例206 学生成绩不及格设置单元格突出显示 为红色 326 实例207 根据多个字段内容设置不同数据行的 背景色 327 实例208 自定义分页并结合下拉列表实现页次 切换 328 实例209 结合分页模板PagerTemplate实现 自定义分页 330 实例210 在GridView控件动态添加模板列 331 实例211 带上下箭头排序并实现查询数据为 空显示表头 334 实例212 GridView自动求和及合并多列多行 单元格 336 实例213 GridView合并行或列单元格的5种 通用方式 338 实例214 GridView删除数据时弹出确认对话框 (含内容提示) 340 实例215 GridView数据源为空时显示表头和 提示信息 341 实例216 创建表头固定、表体可滚动的 GridView控件 342 实例217 可拖动列、可排序、可改变宽度的 GridView控件 344 实例218 使用“…”优化GridView控件的 超长字符显示 345 实例219 一次性编辑GridView控件的所有行 的数据 347 实例220 嵌套DropDownList控件根据库存量 设置商品停售 348 实例221 嵌套CheckBox实现批量删除和更新 供求信息 349 实例222 结合CheckBox实现密码重置 (MD5加密) 351 实例223 结合哈希表设置在线考试后台管理 权限 353 实例224 嵌套GridView控件实现商品信息 明细表 354 实例225 将GridView控件的数据导出到Excel 并进行格式化 355 实例226 将Excel数据导入到Aceess 并绑定GridView 356 实例227 将GridView绑定的Access数据 生成XML 358 实例228 嵌套购物车(可增减商品数并显示 摘要信息) 359 实例229 使用LINQ实现GridView控件分页 功能 361 实例230 LINQ绑定GridView实现编辑和删除 数据 362 实例231 开发针对GridView自定义分页的用户 控件 364 7.4 灵活访问数据俊杰:DataList控件 365 实例232 分页绑定DataList数据并实现页面 跳转功能 365 实例233 开发针对DataList控件分页功能的 用户控件 368 实例234 使用DataList删除数据(支持批量 删除) 370 实例235 利用DataList控件智能化查看详细 信息 371 实例236 编辑绑定在DataList控件的商品 信息 373 实例237 利用嵌套DataList控件显示商品明细 信息 374 实例238 查找嵌套在DataList控件的多个 服务器控件 376 7.5 王牌现身:全新的ListView控件 377 实例239 以独立DataPager控件设置ListView 的分页 377 实例240 异步无刷新水平滚动照片 (AJAX+ListView) 379 实例241 编辑绑定在ListView的照片 (ADO.NET版) 380 实例242 编辑绑定在ListView的照片 (LINQ版) 382 实例243 高亮显示ListView的数据行并实现 图片自动变换 384
目录 DataGridView控件用法合集 1 1.当前的单元格属性取得、变更 4 2.DataGridView编辑属性 5 3.DataGridView最下面一列新追加行非表示 7 4.判断当前行是否为新追加的行 8 5. DataGridView删除行可否设定 8 6. DataGridView行列不表示和删除 10 7. DataGridView行列宽度高度设置为不能编辑 12 8. DataGridView行高列幅自动调整 15 9. DataGridView指定行列冻结 列冻结(当前列以及左侧做所有列) 16 10. DataGridView列顺序变更可否设定 17 11. DataGridView行复数择 复数行不可 18 12. DataGridView择的行、列、单元格取得 19 13. DataGridView指定单元格是否表示 21 14. DataGridView表头部单元格取得 22 17.DataGridView粘贴 25 18. DataGridView单元格上ToolTip表示设定(鼠标移动到相应单元格上时,弹出说明信息) 29 19. DataGridView的ContextMenuStrip属性 31 20.指定DataGridView的滚动框位置 34 21. DataGridView手动追加列 34 22. DataGridView全体分界线样式设置 36 24. DataGridView新追加行的行高样式设置 39 25. DataGridView新追加行单元格默认值设置 40 26. DataGridView单元格数据错误标签表示 41 27. DataGridView单元格内输入值正确性判断 44 28. DataGridView单元格输入错误值事件的捕获 47 29. DataGridView行排序(点击列表头自动排序的设置) 49 30. DataGridView自动行排序(新追加值也会自动排序) 50 31. DataGridView自动行排序禁止情况下的排序 53 32. DataGridView指定列指定排序 60 33. DataGridView单元格样式设置 61 34. DataGridView文字表示位置的设定 69 35. DataGridView单元格内文字列换行 70 36. DataGridView单元格DBNull值表示的设定 71 37. DataGridView单元格样式格式化 71 38. DataGridView指定单元格颜色设定 74 39. DataGridView单元格文字字体设置 78 40. DataGridView根据单元格值设定单元格样式 82 41. DataGridView设置单元格背景颜色 84 42. DataGridView行样式描画 91 43. DataGridView显示行号 101 44. DataGridView焦点所在单元格焦点框不显示的设定 105 45. DataGridView显示择框CheckBox 107 46. DataGridView显示下拉框ComboBox 109 47. DataGridView单击打开下拉框 113 48. DataGridView显示按钮 115 49. DataGridView显示链接 117 50. DataGridView显示图像 120 51. DataGridView编辑单元格控件取得 123 52. DataGridView输入自动完成 125 53. DataGridView单元格编辑时键盘KEY事件取得 131 54. DataGridView下拉框(ComboBox)单元格编辑时事件取得 134 55. DataGridView下拉框(ComboBox)单元格允许文字输入设定 138 56. DataGridView根据值不同在另一列显示相应图片 141 57. DataGridView显示进度条(ProgressBar) 147 58. DataGridView添加MaskedTextBox 176 59. DataGridViewEnter键按下焦点移至旁边的单元格 202 60. DataGridView行集合化(Group) 205

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧