循环索引问题

0 1看天下 2011-01-07 03:07:10
帮忙看一下下面的程序
//private void yytdictGrid1_Grid_AfterRowColChange(object sender,C1.Win.C1FlexGrid.RangeEventArgs e)
//{
// if (this.yytdictGrid1.Grid.Rows.Count - 3 == 0)
// {
// yytdictGrid1.Grid.Rows[this.yytdictGrid1.Grid.Selection.r1]["SLEVEL"] = "1";
// yytdictGrid1.Grid.Rows[this.yytdictGrid1.Grid.Selection.r1]["SLEVELDESC"] = "学生";
// yytdictGrid1.Grid.Rows[this.yytdictGrid1.Grid.Selection.r1]["NEMONEY"] = "";
// }
// this.yytdictGrid1.Grid.Rows[3]["NEMONEY"] = this.yytdictGrid1.Grid.Rows[2]["NFMONEY"];
// for (int i =1; i<this.yytdictGrid1.Grid.Rows.Count; i++)
// {
// if (Convert.ToInt32(yytdictGrid1.Grid.Rows[i+4]["NFMONEY"])<Convert.ToInt32( yytdictGrid1.Grid.Rows[i+4]["NEMONEY"])) // {
// if ((this.yytdictGrid1.Grid.Rows[i]["SLEVEL"].ToString()).Length<(this.yytdictGrid1.Grid.Rows[i+1]["SLEVEL"].ToString()).Length)
// {
// this.yytdictGrid1.Grid.Rows[i + 1]["NEMONEY"] = this.yytdictGrid1.Grid.Rows[i]["NFMONEY"];
// }
// else
// { }

// // }
// else
// {}
//
//
// }
//}
在执行到第16行的时候老显示索引超界,grid有5行,应该怎么改呢??
我想比较yytdictGrid1.Grid.Rows[i+4]["NFMONEY"] ,yytdictGrid1.Grid.Rows[i+4]["NEMONEY"]这两个对象的大小,另外我的i+4读得是第5行的数据,因为刚开始grid表为空的时候就已经存在默认的三行数据!
...全文
92 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jxc521523 2011-01-07
  • 打赏
  • 举报
回复
是i+4超过了Grid.Rows.Count报的异常
0 1看天下 2011-01-07
  • 打赏
  • 举报
回复
我跟了一下,
// if (Convert.ToInt32(yytdictGrid1.Grid.Rows[i+4]["NFMONEY"])<Convert.ToInt32( yytdictGrid1.Grid.Rows[i+4]["NEMONEY"])) // {就是他所索引超界,还有怎么比较yytdictGrid1.Grid.Rows[i+4]["NFMONEY"],yytdictGrid1.Grid.Rows[i+4]["NEMONEY"]这两列大小呢,好像用convert转换不太对
wuyq11 2011-01-07
  • 打赏
  • 举报
回复
F11单步,查看各值

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧