Datagrid,Index超出范围

时间:2016-08-10 17:31:23

标签: c# wpf datagrid

我从Datagrid获取值,将其存储到textfield并通过提交按钮将值转储到数据库中,并且我再次调用同一个表以便在该按钮上刷新目的。但是这里我得到一个异常... < / p>

  

指数超出范围。必须是非负数且小于   采集。参数名称:索引

我还有另一个问题是产生了额外的行。为什么会发生这种情况我无法承受。如果我点击那个额外的行,我的程序会显示另一个异常。

无法将“MS.Internal.NamedObject”类型的对象强制转换为“System.Data.DataRowView”。

DataSet ds = new DataSet();
MySqlDataAdapter da = new MySqlDataAdapter(sql, con);
da.Fill(ds);
datagridAccepted.ItemsSource = ds.Tables[0].DefaultView;

DataRowView row = (DataRowView)datagridDocSchedule.SelectedItems[0];
textBoxId.Text = row["id"].ToString();
textBoxName.Text = row["name"].ToString();
textBoxSpecialistIn.Text = row["specialist_in"].ToString();

1 个答案:

答案 0 :(得分:3)

这表示您的ds.TablesdatagridDocSchedule.SelectedItems为空。 调试你的代码,看看哪一个是空的。