CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

怎样获得DataGrid中的ID号

楼主leon168(www.doaspx.com [Asp.Net电子书资料下载])2005-08-04 10:48:32 在 .NET技术 / ASP.NET 提问

有个按纽,不在DataGrid中  
  DataGrid中有一列选择框  
   
  点击按纽以后我想得到选种的ID,再进行单个或者批量的删除等操作  
   
  就象ASP里面那样,先谢谢了 问题点数:20、回复次数:13Top

1 楼jerry_yuan(jerry)回复于 2005-08-04 10:54:13 得分 0

在datagrid中加一个checkbox,当点按钮时遍历datagrid的行,判断checkbox是否选中,然后做相应的处理Top

2 楼lxg13(翔子)回复于 2005-08-04 10:55:12 得分 0

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;  
  }  
  }Top

3 楼regedit362451dennis(烨儿)回复于 2005-08-04 10:58:33 得分 0

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

4 楼leon168(www.doaspx.com [Asp.Net电子书资料下载])回复于 2005-08-04 11:00:41 得分 0

说错了说错了,我是要得到哪个checkbox所对应那行的数据库中ID号Top

5 楼lxg13(翔子)回复于 2005-08-04 11:11:18 得分 0

知道了index自然就知道了ID  
   
  ID=DataGrid1.DataKeys[index]Top

6 楼jimu8130(火箭的未来在哪里?)回复于 2005-08-04 11:16:32 得分 10

http://dev.csdn.net/develop/article/21/21585.shtm  
  看这篇文章咯Top

7 楼leon168(www.doaspx.com [Asp.Net电子书资料下载])回复于 2005-08-04 11:16:33 得分 0

但如果我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)  
  错误,未将对象实例化Top

8 楼wingnal(清淡天和)回复于 2005-08-04 11:24:06 得分 0

 
  >>leon168(www.doaspx.com   [Asp.Net电子书资料下载])     2005-8-4   11:16:00  
  但如果我DataGrid中没有先设置DataKeys呢,它也能找到吗???  
   
  你的datagrid中总的有主键或者自增键之类的吧,至少也的有一列或者几列这样的数据,通过它们能在数据库中去检索出唯一数据,不然你怎么删除?  
   
  Top

9 楼leon168(www.doaspx.com [Asp.Net电子书资料下载])回复于 2005-08-04 11:26:57 得分 0

明白了DataGrid其实就是物理表的映象,只要物理表中有主键它这就会有,是这个意思吗  
   
  我现在还没取到ID,报错,还请大家继续帮帮我Top

10 楼flying310(林林)回复于 2005-08-04 11:30:57 得分 10

有两种方法,一种是设置datakey,另一种是做不显示的绑定列。Top

11 楼leon168(www.doaspx.com [Asp.Net电子书资料下载])回复于 2005-08-04 11:46:38 得分 0

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)  
  错误,未将对象实例化  
  Top

12 楼egonzou(落网的鱼)回复于 2005-08-04 11:50:30 得分 0

也就是说chk的值没有取到,没有找到checkbox控件Top

13 楼leon168(www.doaspx.com [Asp.Net电子书资料下载])回复于 2005-08-04 11:56:12 得分 0

怎么样才可以找到呢,我的按纽不是放在DataGrid中的  
   
  选择框是放在datagrid中Top

相关问题

  • 如何获得ID???(DataGrid)
  • 请问如何获得主板ID 号。
  • 如何获得鼠标点及datagrid的行号呢??
  • 怎样获得datagrid双击和鼠标移上时的行号。
  • 怎样获得我在dataGrid选中的所有行的行号?
  • 关于rs.addnew 如何获得id的值,id为自动编号
  • 如何获得DataGrid中编辑列中控件的ID?
  • 获得行号。。
  • 用EnumChildWindows怎么获得控件ID号!!!急救啊
  • 如何获得cpu,硬盘,网卡的ID号及IP地址?

关键词

  • datagrid
  • chk
  • cnt
  • 按纽
  • checkbox
  • items
  • 键
  • vip
  • itemindex
  • datagriditem

得分解答快速导航

  • 帖主:leon168
  • jimu8130
  • flying310

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo