指定的参数已超出有效值的范围。 参数名: index,该如何解决
指定的参数已超出有效值的范围。 参数名: index
private void FrmClassMain_Load(object sender, EventArgs e)
{
foreach (DataRow dr in AppClass.getOrgoranize().Tables[0].Rows)
{
TreeNode tr_organize = new TreeNode();
tr_organize.Text = dr["ORGANIZE_NAME"].ToString();
tr_organize.Tag = dr["ORGANIZE_ID"].ToString();
this.treeView.Nodes.Add(tr_organize);
foreach (DataRow dr_sub in AppClass.getClass(tr_organize.Tag.ToString()).Tables[0].Rows)
{
TreeNode tr_class = new TreeNode();
tr_class.Text = dr_sub["ORGANIZE_NAME"].ToString();
tr_class.Tag = dr_sub["ORGANIZE_ID"].ToString();
tr_organize.Nodes.Add(tr_class);
}
}
this.treeView.Nodes[0].Expand();
this.treeView.SelectedNode = this.treeView.Nodes[0].Nodes[0];
this.WindowState = FormWindowState.Maximized;
}
------解决方案--------------------
下标越界,因为你没有指出发生错误的具体行,我们假设是
foreach (DataRow dr_sub in AppClass.getClass(tr_organize.Tag.ToString()).Tables[0].Rows)
这里出错
那么就是AppClass.getClass(tr_organize.Tag.ToString()).Tables没有表存在。
如果是别的行出错,也照此分析。
------解决方案--------------------
自己断点跟一下,什么都知道了
AppClass.getOrgoranize().Tables[0].Rows
不要方法后面直接取属性
中间结果先放dataset里,判断一下是否为空
------解决方案--------------------
this.treeView.Nodes[0].Expand();
this.treeView.SelectedNode = this.treeView.Nodes[0].Nodes[0];
debug这两句
private void FrmClassMain_Load(object sender, EventArgs e)
{
foreach (DataRow dr in AppClass.getOrgoranize().Tables[0].Rows)
{
TreeNode tr_organize = new TreeNode();
tr_organize.Text = dr["ORGANIZE_NAME"].ToString();
tr_organize.Tag = dr["ORGANIZE_ID"].ToString();
this.treeView.Nodes.Add(tr_organize);
foreach (DataRow dr_sub in AppClass.getClass(tr_organize.Tag.ToString()).Tables[0].Rows)
{
TreeNode tr_class = new TreeNode();
tr_class.Text = dr_sub["ORGANIZE_NAME"].ToString();
tr_class.Tag = dr_sub["ORGANIZE_ID"].ToString();
tr_organize.Nodes.Add(tr_class);
}
}
this.treeView.Nodes[0].Expand();
this.treeView.SelectedNode = this.treeView.Nodes[0].Nodes[0];
this.WindowState = FormWindowState.Maximized;
}
------解决方案--------------------
下标越界,因为你没有指出发生错误的具体行,我们假设是
foreach (DataRow dr_sub in AppClass.getClass(tr_organize.Tag.ToString()).Tables[0].Rows)
这里出错
那么就是AppClass.getClass(tr_organize.Tag.ToString()).Tables没有表存在。
如果是别的行出错,也照此分析。
------解决方案--------------------
自己断点跟一下,什么都知道了
AppClass.getOrgoranize().Tables[0].Rows
不要方法后面直接取属性
中间结果先放dataset里,判断一下是否为空
------解决方案--------------------
this.treeView.Nodes[0].Expand();
this.treeView.SelectedNode = this.treeView.Nodes[0].Nodes[0];
debug这两句