指定的参数超出了有效值的范围? C#

时间:2017-08-10 02:10:19

标签: c# asp.net

我有一个动态创建的asp表,它有4列。第一列是文本,第二列是文本,第三列是文本。我需要遍历表并从文本框中获取值。但是当我尝试获取文本框值时,我收到此异常:指定的参数超出了有效值的范围。我将单元格索引设置为1,因为文本框位于第二列。如何从文本框中获取文本?

foreach (TableRow row in this.reading.Rows)
        {
            var textbox = (TextBox)row.Cells[1].Controls[1];
            string id = row.Cells[3].Text;

            if (textbox.Text != "")
            {
                double f = Convert.ToDouble(textbox.Text);
                DBConn.update(f, id);
            }
            else
            {

            }
        }

1 个答案:

答案 0 :(得分:1)

正如dime2lo所提到的,如果没有调试/提供更多信息,很难找到错误。

尝试而不是将文本框分配给表格行中的第二个控件,将其分配给控件并删除尖括号。

var controls = row.Cells [1] .Controls;

然后遍历控件

foreach (Control c Controls)
       {
       //Debug in here. 
       }

这至少可以帮助您了解它出了什么问题。