GridView 超出范围异常
GridView Getting Out of Range Exception
我有一个程序可以在创建文本文件时监视网络路径文件夹中的文本文件,它将在 Gridview 上显示为路径“@\192.168.10.5\Export”+文件名,之后它将循环遍历 Gridview,然后对数据库执行插入查询,如果创建了一个文本文件,它工作得很好,但是如果创建了两个文本文件,我会得到超出范围的异常,这表示它不会处理第二个文本文件,我不知道为什么?
如果我没理解错的话:
- 第一个 foreach 循环被认为遍历所有行
- 第二个循环 (
for ... i < pathGrid.Rows.Count ...
) 应该遍历一行中的所有单元格吗?
如果在 rows.Cells[i]
中将行索引用作单元格索引,为什么在第二个循环中使用行索引作为参数?
我认为这是问题所在。
编辑:
解释一下我的想法:
我不知道你的数据网格结构,但我假设,每一行都包含第一个单元格中的文件路径。所以只使用第一个循环:
foreach (DataGridViewRow rows in pathGrid.Rows){
string[] Lines = File.ReadAllLines(rows.Cells[0].Value.ToString());
.
.
.
我有一个程序可以在创建文本文件时监视网络路径文件夹中的文本文件,它将在 Gridview 上显示为路径“@\192.168.10.5\Export”+文件名,之后它将循环遍历 Gridview,然后对数据库执行插入查询,如果创建了一个文本文件,它工作得很好,但是如果创建了两个文本文件,我会得到超出范围的异常,这表示它不会处理第二个文本文件,我不知道为什么?
如果我没理解错的话:
- 第一个 foreach 循环被认为遍历所有行
- 第二个循环 (
for ... i < pathGrid.Rows.Count ...
) 应该遍历一行中的所有单元格吗?
如果在 rows.Cells[i]
中将行索引用作单元格索引,为什么在第二个循环中使用行索引作为参数?
我认为这是问题所在。
编辑:
解释一下我的想法:
我不知道你的数据网格结构,但我假设,每一行都包含第一个单元格中的文件路径。所以只使用第一个循环:
foreach (DataGridViewRow rows in pathGrid.Rows){
string[] Lines = File.ReadAllLines(rows.Cells[0].Value.ToString());
.
.
.