gridview 里checkbox绑定问题

aplesen 2010-05-28 09:49:46
数据库有一列 值是这样的 0 1 2
如果是0 则checkbox 未选中
如果是1则选中
如果是2 则 选中 且不能编辑
请问如何实现
大哥大姐们救命啊
...全文
86 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
object_hellojie 2010-05-28
  • 打赏
  • 举报
回复
是在Row_DataBound事件
写上CheckBox cb=(CheckBox)e.Row.FindContro('CheckBox1');
string txt= e.Row.Cells[索引];
if(txt=="0")
cb.checked=false;
else if(txt="1")
cb.checked=true;
else{
cb.checked=true;
cb.Enable=false;
}
lzk1018834925 2010-05-28
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 q107770540 的回复:]
C# code


for(int i=0;i<gridview1.Rows.Count;i++)
{
CheckBox cb=(CheckBox)gridview1.Rows[i].FindContro('CheckBox1');
switch(gridview1.Rows[i].Cells[0].Text) //假设你的 0 1 2字段的值存在第1列
{
……
[/Quote]
lzk1018834925 2010-05-28
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 canxue418 的回复:]
是在Row_DataBound事件
写上CheckBox cb=(CheckBox)gridview1.Rows[i].FindContro('CheckBox1');
switch(gridview1.Rows[i].Cells[0].Text) //假设你的 0 1 2字段的值存在第1列
{
case "0":
cb.Checked=false;
break;……
[/Quote]

顶,就是这样啦...
hua_nan_she 2010-05-28
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 q107770540 的回复:]
C# code


for(int i=0;i<gridview1.Rows.Count;i++)
{
CheckBox cb=(CheckBox)gridview1.Rows[i].FindContro('CheckBox1');
switch(gridview1.Rows[i].Cells[0].Text) //假设你的 0 1 2字段的值存在第1列
{
……
[/Quote]
wangqiinfo 2010-05-28
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 q107770540 的回复:]
C# code


for(int i=0;i<gridview1.Rows.Count;i++)
{
CheckBox cb=(CheckBox)gridview1.Rows[i].FindContro('CheckBox1');
switch(gridview1.Rows[i].Cells[0].Text) //假设你的 0 1 2字段的值存在第1列
{
……
[/Quote]
canxue418 2010-05-28
  • 打赏
  • 举报
回复
是在Row_DataBound事件
写上CheckBox cb=(CheckBox)gridview1.Rows[i].FindContro('CheckBox1');
switch(gridview1.Rows[i].Cells[0].Text) //假设你的 0 1 2字段的值存在第1列
{
case "0":
cb.Checked=false;
break;

case "1":
cb.Checked=true;
break;

case "2":
cb.Checked=true;
cb.Enable=false;
break;

defult:
break;
}
haoranchangfeng 2010-05-28
  • 打赏
  • 举报
回复
可以在RowDataBind事件中判断,也可以在aspx页面中调用函数判断
canxue418 2010-05-28
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 q107770540 的回复:]
C# code


for(int i=0;i<gridview1.Rows.Count;i++)
{
CheckBox cb=(CheckBox)gridview1.Rows[i].FindContro('CheckBox1');
switch(gridview1.Rows[i].Cells[0].Text) //假设你的 0 1 2字段的值存在第1列
{
……
[/Quote]
赞同!哈哈
canxue418 2010-05-28
  • 打赏
  • 举报
回复
[Quote=引用楼主 aplesen 的回复:]
数据库有一列 值是这样的 0 1 2
如果是0 则checkbox 未选中
如果是1则选中
如果是2 则 选中 且不能编辑
请问如何实现
大哥大姐们救命啊
[/Quote]
赞同!
q107770540 2010-05-28
  • 打赏
  • 举报
回复
是在Row_DataBound事件 绑定
flyingyinjun 2010-05-28
  • 打赏
  • 举报
回复
[Quote=引用楼主 aplesen 的回复:]
数据库有一列 值是这样的 0 1 2
如果是0 则checkbox 未选中
如果是1则选中
如果是2 则 选中 且不能编辑
请问如何实现
大哥大姐们救命啊
[/Quote]
checkbox在GRIDVIEW中的应用的前提是数据库绑定CHECKBOX的字段必须为BOOL型或BIT型数据,也就是只能取0或1,或者TURE,FALSE
q107770540 2010-05-28
  • 打赏
  • 举报
回复

CheckBox cb=(CheckBox)gridview1.Rows[i].FindControl('CheckBox1');
q107770540 2010-05-28
  • 打赏
  • 举报
回复


for(int i=0;i<gridview1.Rows.Count;i++)
{
CheckBox cb=(CheckBox)gridview1.Rows[i].FindContro('CheckBox1');
switch(gridview1.Rows[i].Cells[0].Text) //假设你的 0 1 2字段的值存在第1列
{
case "0":
cb.Checked=false;
break;

case "1":
cb.Checked=true;
break;

case "2":
cb.Checked=true;
cb.Enable=false;
break;

defult:
break;
}
}
//代码手打

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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