怎样获得DataGrid中的ID号

leon168 2005-08-04 10:48:32
有个按纽,不在DataGrid中
DataGrid中有一列选择框

点击按纽以后我想得到选种的ID,再进行单个或者批量的删除等操作

就象ASP里面那样,先谢谢了
...全文
166 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
leon168 2005-08-04
  • 打赏
  • 举报
回复
怎么样才可以找到呢,我的按纽不是放在DataGrid中的

选择框是放在datagrid中
egonzou 2005-08-04
  • 打赏
  • 举报
回复
也就是说chk的值没有取到,没有找到checkbox控件
leon168 2005-08-04
  • 打赏
  • 举报
回复
int cnt=VIP_DataGrid.Items.Count;
if(cnt>0)
{
int[] items=new int[cnt];
int i=0;
foreach(DataGridItem item in VIP_DataGrid.Items)
{
CheckBox chk=(CheckBox)(item.Cells[0].FindControl("cnkExport"));
if(chk.Checked)
{
items[i]=(item.ItemIndex);
i++;
}
Label1.Text=items[i].ToString();
}
}


这是我现在按照你的改法该的,出现if(chk.Checked)
错误,未将对象实例化
flying310 2005-08-04
  • 打赏
  • 举报
回复
有两种方法,一种是设置datakey,另一种是做不显示的绑定列。
leon168 2005-08-04
  • 打赏
  • 举报
回复
明白了DataGrid其实就是物理表的映象,只要物理表中有主键它这就会有,是这个意思吗

我现在还没取到ID,报错,还请大家继续帮帮我
wingnal 2005-08-04
  • 打赏
  • 举报
回复

>>leon168(www.doaspx.com [Asp.Net电子书资料下载]) 2005-8-4 11:16:00
但如果我DataGrid中没有先设置DataKeys呢,它也能找到吗???

你的datagrid中总的有主键或者自增键之类的吧,至少也的有一列或者几列这样的数据,通过它们能在数据库中去检索出唯一数据,不然你怎么删除?

leon168 2005-08-04
  • 打赏
  • 举报
回复
但如果我DataGrid中没有先设置DataKeys呢,它也能找到吗???

int cnt=VIP_DataGrid.Items.Count;
if(cnt>0)
{
int[] items=new int[cnt];
int i=0;
foreach(DataGridItem item in VIP_DataGrid.Items)
{
CheckBox chk=(CheckBox)(item.Cells[0].FindControl("cnkExport"));
if(chk.Checked)
{
items[i]=(item.ItemIndex);
i++;
}
Label1.Text=items[i].ToString();
}
}


这是我现在按照你的改法该的,出现if(chk.Checked)
错误,未将对象实例化
jimu8130 2005-08-04
  • 打赏
  • 举报
回复
http://dev.csdn.net/develop/article/21/21585.shtm
看这篇文章咯
祥子_13 2005-08-04
  • 打赏
  • 举报
回复
知道了index自然就知道了ID

ID=DataGrid1.DataKeys[index]
leon168 2005-08-04
  • 打赏
  • 举报
回复
说错了说错了,我是要得到哪个checkbox所对应那行的数据库中ID号
  • 打赏
  • 举报
回复
关注!!!


================================================================
此帖通过csdn小助手回复。
CSDN小助手是使用vb.net(开源)编写的CSDN论坛脱机“外挂”,她能够在
脱离IE的情况下使用Csdn论坛。程序只加载最核心的数据,所以显示更
快,产生的流量更小。

下载地址:http://qqwwee.com/csdn.rar
================================================================
祥子_13 2005-08-04
  • 打赏
  • 举报
回复
public int[] SelectedIndexs
{
get
{
int cnt=DataGrid1.Items.Count;
if(cnt>0)
{
int[] items=new int[cnt];
int i=0;
foreach(DataGridItem item in DataGrid1.Items)
{
CheckBox chk=(CheckBox)(item.Cells[0].FindControl("ChkSel"));
if(chk.Checked)
{
items[i]=(item.ItemIndex);
i++;
}
}
if(i==0)
return null;
if(i<cnt)
{
int[] rst=new int[i];
Array.Copy(items,rst,i);
return rst;
}
return items;
}
return null;
}
}
jerry_yuan 2005-08-04
  • 打赏
  • 举报
回复
在datagrid中加一个checkbox,当点按钮时遍历datagrid的行,判断checkbox是否选中,然后做相应的处理

62,046

社区成员

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

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

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

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