CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

请问dataGrid中点击“修改”后,如何得到要修改的行的记录值?(急)

楼主fivehun2005(弱弱)2005-06-02 13:35:46 在 .NET技术 / ASP.NET 提问

请问dataGrid中点击“修改”后,如何得到要修改的行的记录值?另外将该行变为其它颜色。  
  如下是我的部分代码:  
  .aspx  
  //////  
  <asp:datagrid   id="gridAvatarList"   runat="server"   Width="100%"   AutoGenerateColumns="False">  
  <Columns>  
  <asp:BoundColumn   DataField="AvatarTypeID"   HeaderText="编号"></asp:BoundColumn>  
  <asp:BoundColumn   DataField="AvatarTypeName"   HeaderText="物品名称"></asp:BoundColumn>  
  <asp:BoundColumn   DataField="AvatarKindID"   HeaderText="所属类别"></asp:BoundColumn>  
  <asp:templatecolumn   headertext="修改">  
  <itemtemplate>  
  <asp:Button   ID="btnEdit"   Runat="server"   Text="修改"   CommandName="edit"></asp:Button>  
  </itemtemplate>  
  </asp:templatecolumn>  
  <asp:templatecolumn   headertext="删除">  
  <itemtemplate>  
  <asp:Button   ID="btnDel"   Runat="server"   Text="删除"   CommandName="del"></asp:Button>  
  </itemtemplate>  
  </asp:templatecolumn>  
  </Columns>  
  </asp:datagrid>  
   
  .aspx.cs  
  ////  
  private   void   btnSave_Click(object   sender,   System.EventArgs   e)  
  {  
  Avatar   avatar   =   new   Avatar();  
  if(isEdit)           //修改  
  {  
  //调用修改方法  
  isEdit   =   false;  
  }  
  else                     //添加  
  {  
  avatar.Add(txtAvatarTypeName.Text.Trim(),   1);  
  currentPage   =   1;  
  BindPagedData();  
  }  
  }  
   
  private   void   gridAvatarList_ItemCommand(object   source,   System.Web.UI.WebControls.DataGridCommandEventArgs   e)  
  {  
  if(e.CommandName   ==   "edit")  
  {  
  /*  
  TextBox   editRecord   =   (TextBox)e.Item.FindControl("AvatarTypeName");  
  if(editRecord   !=   null)  
  txtAvatarTypeName.Text   =   editRecord.Text;  
  */  
  txtAvatarTypeName.Text   =   e.Item.Cells[1].Text;  
  isEdit   =   true;  
  }  
  }  
   
  e.Item.Cells[1].Text   列名不能用FieldName来得到吗?用序号是不是有些不大合适?如果表中字段的顺序发生了变化,不就乱了吗?  
  还有,如何修改点击了的行的颜色呢?已表示现在正在修改  
  请指教!!!!!!! 问题点数:0、回复次数:6Top

1 楼hchxxzx(NET?摸到一点门槛)回复于 2005-06-02 14:00:38 得分 0

请问dataGrid中点击“修改”后,如何得到要修改的行的记录值?另外将该行变为其它颜色。  
  ----------  
  <asp:Button   ID="btnEdit"   Runat="server"   Text="修改"   CommandName="edit">  
  <asp:Button   ID="btnDel"   Runat="server"   Text="删除"   CommandName="del">  
  你上述两句代码,写的都有问题,主要是CommandName  
  第一个要写成这样:  
  CommandName="Edit"  
  第二个  
  CommandName   =   "Delete"  
  要注意大小写  
   
  再仔细看了你的代码,错误太多,没有办法修改了.你到如下地址看一个完整的示例,仔细看如何调用.  
   
  http://community.csdn.net/Expert/topic/4016/4016964.xml?temp=.8130915Top

2 楼fivehun2005(弱弱)回复于 2005-06-02 14:35:39 得分 0

错误太多?不会吧?显示都很正常呀。  
  Top

3 楼luby(轻疯[在岁月无声的消逝里,轻轻的...我疯了。])回复于 2005-06-02 15:15:54 得分 0

在DATAGRID中加入   DataKeyField="编号"   (就是指定主键)  
  在后台用this.DataGrid1.DataKeys[e.Item.ItemIndex]就可以得到"编号"  
   
  颜色问题用属性生成器就可以解决,你打开看看就知道了,因为很简单。Top

4 楼fivehun2005(弱弱)回复于 2005-06-03 11:33:56 得分 0

对了,楼上的这位兄弟,请问如何在dbgrid中是示一个到数的数据列?  
  比如:  
  序号     名称     内容  
  5           aa           bb  
  4           cc           dd  
  3           dd           ff  
  2           dd           hh  
  1           ff           ffTop

5 楼hchxxzx(NET?摸到一点门槛)回复于 2005-06-03 13:02:16 得分 0

在SQL中进行排序  
  select   *   from   table   where   xx=xx   order   by   sno  
  重点是后面的order   by   字段名Top

6 楼wangxinghai(我本轻狂)回复于 2005-06-03 13:11:24 得分 0

e.item.itemindex可以得到编辑的行号了.Top

相关问题

  • datagrid怎么修改多行记录?
  • datagrid修改记录问题~!老是修改第一条记录~!急~!在线等~!
  • 修改记录
  • 修改记录?
  • 记录修改
  • 如何修改,删除DataGrid里的记录?(急,高分求救!)
  • DataGrid允许修改但不允许增加新记录?
  • 怎么在datagrid返回的记录中作修改?
  • 如何用另一个窗体来修改DataGrid中的记录
  • 怎样利用ADO修改记录中某一字段的值??

关键词

  • 修改
  • 代码
  • datagrid
  • txtavatartypename
  • editrecord
  • isedit
  • avatar
  • commandname
  • 得到
  • 行的记录值

得分解答快速导航

  • 帖主:fivehun2005

相关链接

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

广告也精彩

反馈

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