异常详细信息: System.FormatException: 输入字符串的格式不正确。源错误: 
行 22:     {
行 23:         GridViewRow row = GridView1.SelectedRow;
行 24:         int intCI = Convert.ToInt32(row.Cells[0].Text);
行 25:         int intT = Convert.ToInt32(row.Cells[3].Text);
行 26:         string strSI = lbl_stu.Text.ToString();
 
源文件: HandOnAssignment.aspx.cs    行: 24

解决方案 »

  1.   

    int intCI = Convert.ToInt32(row.Cells[0].Text);
    int intT = Convert.ToInt32(row.Cells[3].Text);这两个存在中文字母或者空
      

  2.   

    row.Cells[0].Text的内容不是数字,无法转换成int自己调试看看row.Cells[0].Text的内容到底是什么,不要想当然
      

  3.   

    row.Cells[0].Text,不是数值型,报的错误是类型转换的错误
      

  4.   

    int intCI = Convert.ToInt32(row.Cells[0].Text);
    =>
    int intCI = Convert.ToInt32(row.Cells[0].Text.Trim());
    http://topic.csdn.net/u/20111126/13/55f86f32-fb5d-43c4-9682-1e35bf766e77.html
      

  5.   

    int intCI = Convert.ToInt32(row.Cells[0].Text);
    =>
    int intCI = Convert.ToInt32(row.Cells[0].Text.Trim());
     这个地方肯定是  值不能转化为 数字的,所以出错。你要仔细看一下,text是不是 能获取值,如果是模板列要用FINDCONTROL("")获取的。
      

  6.   

    其实这样也可以取值的啊  
    不是label的时候  转换成相应的控件类  
    int i=int.parse(((textBox)gv.rows[e.rowindex].cells[0].controls[0]).text);
    label  int i=int.parse(gv.rows[e.rowindex].cells[0].text)