删除数据时索引超出范围的问题
源代码如下:
private void SafeList_SelectedIndexChanged(object sender, System.EventArgs e)
{
SqlConnection MyConn2 = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings[ "SqlConnStr "]);
MyConn2.Open();
string queryStr2 = "select count(*) from SF_Reback ";
SqlCommand cmd=new SqlCommand(queryStr2,MyConn2);
int count=Convert.ToInt32(cmd.ExecuteScalar()); //读书数据库长度;
//txt_titile.Text = count.ToString();
for(int i=1;i <=count;i++)
{
CheckBox chk=(CheckBox)this.SafeList.Items[i].FindControl( "chkID ");
if(chk.Checked)
{
txt_titile.Text = "1 ";
}
else txt_titile.Text = "2 ";
//if(i==16)
//{Response.Write(i);}
}
点击了这个按纽之后,就说
索引超出范围。必须为非负值并小于集合大小。参数名: index
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.ArgumentOutOfRangeException: 索引超出范围。必须为非负值并小于集合大小。参数名: index
------解决方案--------------------for(int i=1;i <=count;i++)
=======================
for(int i = 0; i < count; i++)
------解决方案--------------------跟踪一下,看是哪里出了问题
------解决方案--------------------for(int i=0;i <=count-1;i++)