【发布时间】:2012-05-30 10:05:16
【问题描述】:
foreach (TcpConnectionInformation info in tcpConnections)
{
dataGridView1.Rows[0].Cells[1].Value =info.LocalEndPoint.Address.ToString();
}
我正在使用此代码将值放入 gridview 但发生此错误。
IndexOutOfRangeException - 索引超出范围。必须是非负数且小于 集合。
参数名称:索引
谢谢 问候
【问题讨论】:
-
调试时哪个索引超出范围?显而易见的猜测是您的 DataGridView 没有行,或者它的第一行少于两个单元格。
-
你在什么活动上做这个? RowDataBound 是个好地方。您得到的错误必须来自 Rows[0] 或 Cells[1]。这可能是因为它们尚不存在,但这取决于您添加此代码的事件。
-
datagridview 中的 row[0] 不是标题行?
-
另外,你为什么要用这样的循环设置静态值?只需使用
tcpConnections中的最后一个值,因为无论如何它最终都会如此。循环是完全没有必要的。 -
当异常被抛出时,您可以查看内部异常以了解您的命令的哪个数组抛出了异常。