我从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();
答案 0 :(得分:3)
这表示您的ds.Tables
或datagridDocSchedule.SelectedItems
为空。
调试你的代码,看看哪一个是空的。