C# 如何从gridview只读列读取列数据

C# 如何从gridview只读列读取列数据,c#,asp.net,gridview,C#,Asp.net,Gridview,我正在尝试读取gridview只读列的列值,但它会产生如下错误: 指定的参数超出了有效值的范围以下是我在asp.net gridview中的行更新事件中的代码 protected void branchgrid_RowUpdating(object sender, GridViewUpdateEventArgs e) { comp.ADMISSIONNUMBER = Convert.ToInt32((TextBox)studacgrid.Rows[e.R

我正在尝试读取gridview只读列的列值,但它会产生如下错误: 指定的参数超出了有效值的范围以下是我在asp.net gridview中的行更新事件中的代码

 protected void branchgrid_RowUpdating(object sender, GridViewUpdateEventArgs e)
        {
            comp.ADMISSIONNUMBER = Convert.ToInt32((TextBox)studacgrid.Rows[e.RowIndex].FindControl("AdmissionNumber"));
        //comp.ADMISSIONNUMBER = Convert.ToInt32(studacgrid.Rows[e.RowIndex].Cells[1]
        comp.MEDIUM =Convert.ToString ((TextBox)studacgrid.Rows[e.RowIndex].FindControl("Medium"));
        comp.CLASSNAME =Convert.ToString ((TextBox)studacgrid.Rows[e.RowIndex].FindControl("Class"));
        comp.ACADAMICYEAR = Convert.ToString((TextBox)studacgrid.Rows[e.RowIndex].FindControl("Academicyear"));
        comp.SECTIONNAME = Convert.ToChar(((TextBox)studacgrid.Rows[e.RowIndex].Cells[7].Controls[0]).Text.ToString());

       }

不要直接使用findcontrol comp.ACADAMICYEAR=((文本框)studacgrid.Rows[e.RowIndex].findcontrol(“年”)指定单元格值;我按照你的建议试了上面的代码。但是它没有从列中获取值。您可以在rowcommand事件或rowdatabound事件中尝试。上述值需要在数据库中更新。因此,我需要从row update事件中获取值。