我从前台页面的GridView中取得两列值以;号做为分割,返回到后台中,如下:
ReturnValue = sgvRentContractSelect.DataKeys[gvr.RowIndex].Value.ToString() +";"+ gvr.Cells[1].Text;注:ReturnValue 为返回值,sgvRentContractSelect为GridView的ID现在在后台调用,要取;号的内容,将内容赋给一个textbox控件.代码如下:
string sContractNum, sContractNumAll;sContractNumAll = this.hidContractNum.Value.ToString().Trim();this.txtContractNum.Text=sContractNumAll.Split(';')[1].ToString().Trim();注:sContractNumAll = this.hidContractNum.Value.ToString().Trim();将前台返回的值赋给了sContractNumAll;问题:程序运行时,提示this.txtContractNum.Text=sContractNumAll.Split(';')[1].ToString().Trim();出错.
是Split(';')[1]出错
错误如下:Index was outside the bounds of the array.请高手给予解决,谢谢先.^_^补充:
ReturnValue=sgvRentContractSelect.DataKeys[gvr.RowIndex].Value.ToString() +";"+ gvr.Cells[1].Text;
这段代码返回的值是GridView中的表的关键字段+;+GridView中显示的第二列的值;
如关键字段是123,第二列的值是test;
返回的值是 123;test返回值里面有";"的,我测试过的.
ReturnValue = sgvRentContractSelect.DataKeys[gvr.RowIndex].Value.ToString() +";"+ gvr.Cells[1].Text;注:ReturnValue 为返回值,sgvRentContractSelect为GridView的ID现在在后台调用,要取;号的内容,将内容赋给一个textbox控件.代码如下:
string sContractNum, sContractNumAll;sContractNumAll = this.hidContractNum.Value.ToString().Trim();this.txtContractNum.Text=sContractNumAll.Split(';')[1].ToString().Trim();注:sContractNumAll = this.hidContractNum.Value.ToString().Trim();将前台返回的值赋给了sContractNumAll;问题:程序运行时,提示this.txtContractNum.Text=sContractNumAll.Split(';')[1].ToString().Trim();出错.
是Split(';')[1]出错
错误如下:Index was outside the bounds of the array.请高手给予解决,谢谢先.^_^补充:
ReturnValue=sgvRentContractSelect.DataKeys[gvr.RowIndex].Value.ToString() +";"+ gvr.Cells[1].Text;
这段代码返回的值是GridView中的表的关键字段+;+GridView中显示的第二列的值;
如关键字段是123,第二列的值是test;
返回的值是 123;test返回值里面有";"的,我测试过的.
string[] arra = str.Split(new char[]{';'});输出下看看.
这句改成:try
{
this.txtContractNum.Text=sContractNumAll.Split( '; ')[1].ToString().Trim();
}
catch{}
===
Split( ';' )--";"后边多了个空格当然就找不到了,也就不存在[1]
还有Split(';')[1]取值后就是string类型就不要再tostring了,
唉 看到那些tostring就头疼
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
this.txtContractNum.Text=sContractNumAll.Split( '; ')[1].ToString().Trim();
放在了Page_lode()里,页面刷新的时候Split的长度是1,取数组取不到[1],所以会报错谢谢各位大哥的帮忙