CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

关于取得DataList中的TextBox值的问题!

楼主yb2008(中科商务网--ZKE360.COM)2005-08-01 09:38:59 在 .NET技术 / ASP.NET 提问

请问如何取得DataList中的TextBox!当我点击"修改"按钮的时候想得到当前行TextBox的值!我用这种方法不行,请高手帮我!!  
   
   
  public   void   DataList_ItemCommand(object   sender,DataListCommandEventArgs   e)  
    {  
  if   (e.CommandName=="Modify")  
    {  
           
          DataList1.EditItemIndex=-1;  
   
          ListBind();  
     
          string   a=((TextBox)e.Item.FindControl("ModifyButton")).Text;//这行报错!!  
   
                            Response.Write(a);  
    }  
  }  
   
  报错如下:  
   
  Server   Error   in   '/NetSystem'   Application.  
  --------------------------------------------------------------------------------  
   
  Specified   cast   is   not   valid.    
  Description:   An   unhandled   exception   occurred   during   the   execution   of   the   current   web   request.   Please   review   the   stack   trace   for   more   information   about   the   error   and   where   it   originated   in   the   code.    
   
  Exception   Details:   System.InvalidCastException:   Specified   cast   is   not   valid.  
   
  Source   Error:    
   
   
  Line   90:           ListBind();  
  Line   91:      
  Line   92:           string   a=((TextBox)e.Item.FindControl("ModifyButton")).Text;  
  Line   93:    
  Line   94:   Response.Write(a);  
     
   
  Source   File:   d:\netsystem\productcharacteristicadd.aspx.cs         Line:   92    
   
  问题点数:50、回复次数:24Top

1 楼yb2008(中科商务网--ZKE360.COM)回复于 2005-08-01 09:41:27 得分 0

解决马上给分!!感谢!Top

2 楼520zyb(欲穷千里目,更上一层楼)回复于 2005-08-01 09:46:10 得分 0

string   a=((TextBox)e.Item.FindControl("ModifyButton")).Text.ToString();Top

3 楼yb2008(中科商务网--ZKE360.COM)回复于 2005-08-01 09:53:39 得分 0

回:520zyb(学无止尽)   (   )   信誉:100  
   
  Server   Error   in   '/NetSystem'   Application.  
  --------------------------------------------------------------------------------  
   
  Specified   cast   is   not   valid.    
  Description:   An   unhandled   exception   occurred   during   the   execution   of   the   current   web   request.   Please   review   the   stack   trace   for   more   information   about   the   error   and   where   it   originated   in   the   code.    
   
  Exception   Details:   System.InvalidCastException:   Specified   cast   is   not   valid.  
   
  Source   Error:    
   
   
  Line   86:         //{  
  Line   87:      
  Line   88:   string   a=((TextBox)e.Item.FindControl("ModifyButton")).Text.ToString();  
  Line   89:    
  Line   90:    
     
   
   
   
   
  Top

4 楼baivkechen()回复于 2005-08-01 09:59:38 得分 0

在page_load事件中写  
  if   (!this.IsPostBack)  
   
      DataList1.DataBind();  
  或   ListBind();  
  Top

5 楼baivkechen()回复于 2005-08-01 10:05:48 得分 0

把这两句写在后面Top

6 楼baivkechen()回复于 2005-08-01 10:06:35 得分 0

DataList1.EditItemIndex=-1;  
   
          ListBind();  
  把这两句写在后面  
   
  Top

7 楼yb2008(中科商务网--ZKE360.COM)回复于 2005-08-01 10:18:33 得分 0

这两句我把它删除   了,还是不行....大哥们帮我呀!Top

8 楼yb2008(中科商务网--ZKE360.COM)回复于 2005-08-01 10:21:16 得分 0

DataList中,<asp:datalist   id="DataList1"   runat="server"   Height="81px"   Width="372px"   BorderWidth="0px"   ForeColor="Transparent"   OnItemCommand="DataList_ItemCommand">  
   
   
  我用的是:OnItemCommand="DataList_ItemCommand"  
   
  是不是这里不对呢???Top

9 楼iuhxq(小灰)回复于 2005-08-01 10:32:09 得分 0

更新要用更新事件  
   
  查查SDK,很简单的Top

10 楼baivkechen()回复于 2005-08-01 10:33:14 得分 0

在page_load事件中写  
  if   (!this.IsPostBack)了吗?Top

11 楼jimu8130(火箭的未来在哪里?)回复于 2005-08-01 10:35:57 得分 0

=((TextBox)e.Item.FindControl("ModifyButton")).Text;  
  你这句findcontrol写的名字是button的名字,而要得到的事textbox,Top

12 楼jimu8130(火箭的未来在哪里?)回复于 2005-08-01 10:39:01 得分 0

所以应该这样写  
  ((TextBox)e.Item.FindControl("TextBoxID")).Text.ToString().Trim();  
  ………………  
  DataList1.EditItemIndex=-1;  
  ListBind();  
  Top

13 楼jimu8130(火箭的未来在哪里?)回复于 2005-08-01 10:46:59 得分 0

lz看看是不是我说的这样的错Top

14 楼yb2008(中科商务网--ZKE360.COM)回复于 2005-08-01 10:49:30 得分 0

关键是现在取不到ModifyButton的值呀!Top

15 楼520zyb(欲穷千里目,更上一层楼)回复于 2005-08-01 10:54:47 得分 25

你是要取Button的值,还是TextBox的值?  
  取TextBox的值:  
  ((TextBox)e.Item.FindControl("TextBoxID")).Text.ToString().Trim();  
  取Button的值:((Button)e.Item.FindControl("ButtonID")).Text.ToString().Trim();  
   
  转换要一致!  
  Top

16 楼jimu8130(火箭的未来在哪里?)回复于 2005-08-01 10:58:41 得分 0

寒,你的textbox的id是ModifyButton这个么?  
  如果你要找button那么((ImageButton)e.Item.FindControl("ModifyButton"))  
  Top

17 楼jimu8130(火箭的未来在哪里?)回复于 2005-08-01 10:59:50 得分 25

520写的button是错误的,Top

18 楼yb2008(中科商务网--ZKE360.COM)回复于 2005-08-01 11:08:56 得分 0

是的,我这样写总不该会有错吧!!  
   
   
  string   a=((TextBox)e.Item.FindControl("ModifyButton")).Text;Top

19 楼yb2008(中科商务网--ZKE360.COM)回复于 2005-08-01 11:12:26 得分 0

我的ModifyButton是TextBox的ID,我想得到TextBox的值!Top

20 楼520zyb(欲穷千里目,更上一层楼)回复于 2005-08-01 11:15:17 得分 0

应该在编辑状态下才能取得TEXTBOX的值,你还是用EditCommand来做吧.  
  你已经用DataList1.EditItemIndex=-1把当前行取消了,应该在操作完后再指定.Top

21 楼yb2008(中科商务网--ZKE360.COM)回复于 2005-08-01 11:17:57 得分 0

好的,我试试,可行,马上给分了!Top

22 楼jimu8130(火箭的未来在哪里?)回复于 2005-08-01 11:21:02 得分 0

如果名字id是textbox的没错的话,这句就应该没有错。Top

23 楼yb2008(中科商务网--ZKE360.COM)回复于 2005-08-01 11:33:13 得分 0

是不是我的按钮要放到"编辑模板"中才可以?Top

24 楼yb2008(中科商务网--ZKE360.COM)回复于 2005-08-01 11:43:48 得分 0

是不是datalist   不能用Textbox,为何取不取值呢,,,,,Top

相关问题

  • 如何用TextBox取得HScrollBar的值?
  • datalist如何取得label的值?
  • 如何取得该textBox的值
  • 如何取得DataGrid模版里TextBox值
  • 头疼啊。为什么DataGrid和DataList中的TextBox取得数据全为空
  • datalist中无法取得更新值,见代码
  • !!怎么在客户端取得TextBox的值?
  • JavaScript如何取得DataList模板列中文本框的值?
  • 如何取得一个panel上的Textbox的文本值?
  • 如何取得DATALIST中某条记录的一个值??(急问)

关键词

  • modifybutton
  • 值
  • datalist
  • textbox
  • findcontrol
  • listbind
  • edititemindex
  • 取得
  • 名字
  • trim

得分解答快速导航

  • 帖主:yb2008
  • 520zyb
  • jimu8130

相关链接

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

广告也精彩

反馈

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