CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

datagrid的update问题

楼主xiaochongvip(暗恋是很伤身体的)2005-11-10 14:19:30 在 .NET技术 / ASP.NET 提问

今天刚刚学习datagrid.发现在更新的时候总是出殃索引超出范围异常呢,我用的代码是    
  private   void   DataGrid1_UpdateCommand(object   source,   System.Web.UI.WebControls.DataGridCommandEventArgs   e)  
   
  (int)DataGrid1.DataKeys[e.Item.ItemIndex]。  
  更新的时候取得textbox中的值应该怎么取啊。  
  谢谢 问题点数:20、回复次数:5Top

1 楼jxufewbt(我的目标是5星)回复于 2005-11-10 14:26:02 得分 8

参照下面的代码:  
  private   void   dgdBranch_UpdateCommand(object   source,   System.Web.UI.WebControls.DataGridCommandEventArgs   e)  
  {  
  if(this.EmpRightCode     >=   3)  
  {  
  int   index   =   e.Item.ItemIndex;  
  int   braID   =   Convert.ToInt16(dgdBranch.DataKeys[index].ToString(),10);  
   
  string   s1   =   ((TextBox)e.Item.Cells[0].Controls[0]).Text;  
  string   s2   =   ((TextBox)e.Item.Cells[1].Controls[0]).Text;  
  if(!ValidateUtil.isBlank(s1))  
  {  
  bool   result   =   (new   DepSystem()).UpdateMrBranch(braID,s1,s2);  
  this.WriteOptLog("修改机构"+s1+"信息");  
  dgdBranch.EditItemIndex   =   -1;  
  dgdBranch.DataBind();  
  }  
  else  
  JScript.Alert   ("机构名称不能为空!");  
  }  
  else  
  JScript.Alert("您没有权限进行此操作!");  
  }Top

2 楼hchxxzx(NET?摸到一点门槛)回复于 2005-11-10 14:36:18 得分 8

你使用这一句  
  (int)DataGrid1.DataKeys[e.Item.ItemIndex]。  
  请问你在绑定的时候,有没有设置该控件的DataKeyField字段呢?如果没有,你是取不到值的.  
   
  另外,到更新行的文本框值代码如下:  
  TextBox   mytext   =   (TextBox)thsi.DataGrid1.Items[e.Item.ItemIndex].FindControl("控件ID");Top

3 楼xiaochongvip(暗恋是很伤身体的)回复于 2005-11-10 14:37:49 得分 0

能取到值了,不过dgdBranch.DataKeys[index].ToString()还是显示错误  
  引超出范围。必须为非负值并小于集合大小。参数名:   index    
  是不是要在aspx页面的datagrid1里面加什么内容啊  
   
  还有啊,DataKeys()是干啥用的啊,我看也用不到它吗,直接用string   s1   =   ((TextBox)e.Item.Cells[0].Controls[0]).Text;  
  取到值就行了嘛,不过看好多代码中都有它的,解释下啊Top

4 楼xiaochongvip(暗恋是很伤身体的)回复于 2005-11-10 14:42:26 得分 0

Cells[0].Controls[0]是指什么啊,还有JScript.Alert()我的怎么不能执行?Top

5 楼engine198473(我喜欢偷偷的看她偷偷的看我)回复于 2005-11-10 15:16:40 得分 4

(int)DataGrid1.DataKeys[e.Item.ItemIndex]  
   
   
  首先确保你设置了DataKeyField字段,该字段对应数据库中的字段.Top

相关问题

  • DataGrid Update 问题
  • DataGrid的Update问题
  • Datagrid 的 update 问题
  • datagrid???
  • DataGrid
  • DataGrid
  • datagrid
  • DataGrid
  • DataGrid
  • datagrid

关键词

  • 字段
  • datagrid
  • 代码
  • dgdbranch
  • datakeys
  • itemindex
  • textbox
  • 更新
  • item
  • cells

得分解答快速导航

  • 帖主:xiaochongvip
  • jxufewbt
  • hchxxzx
  • engine198473

相关链接

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

广告也精彩

反馈

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