无法将类型为“AjaxControlToolkit.MaskedEditExtender”的对象转换为类型“System
本文关键字:类型 对象 System 转换 AjaxControlToolkit MaskedEditExtender | 更新日期: 2023-09-27 18:35:26
>我正在使用这个:http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/MaskedEdit/MaskedEdit.aspx
在一列中,我有多个文本框绑定到数据库中的某些列。我的目标是从那些蒙版编辑的文本框中获取值。由于列中有 4 个控件,我正在尝试获取这样的值:
String firstTXT = ((TextBox)(row.Cells[5].Controls[1])).Text;
String SecondTXT = ((TextBox)(row.Cells[5].Controls[2])).Text;
我可以从第一个文本框中获取值而没有任何错误(但它也被屏蔽了)。当我尝试从第二个我得到: Unable to cast object of type 'AjaxControlToolkit.MaskedEditExtender' to type 'System.Web.UI.WebControls.TextBox'
.
有机会解决吗?谢谢
显然,单元格中的第三个控件是增强第一个文本框的MaskedEditExtender
。根据您的标记,您可能希望改为获取第四个控件:
string secondTXT = ((TextBox) row.Cells[5].Controls[3]).Text;
或者,更好的是,为文本框提供id
属性并使用 FindControl() 获取它们:
string firstTXT = ((TextBox) row.Cells[5].FindControl("firstID")).Text;
string secondTXT = ((TextBox) row.Cells[5].FindControl("secondID")).Text;