C# Datagrid,索引超出范围

C# Datagrid,索引超出范围,c#,wpf,datagrid,C#,Wpf,Datagrid,我从Datagrid中获取值,将其存储到textfield中,并通过submit按钮将值转储到数据库中,同时我再次调用同一个表以刷新该按钮。但这里我得到一个异常 索引超出范围。必须为非负数且小于 收集参数名称:索引 我还有另一个问题,就是产生了一个额外的行。我无法理解为什么会发生这种事。如果我点击那一行,我的程序会显示另一个异常 无法将“MS.Internal.NamedObject”类型的对象强制转换为“System.Data.DataRowView”类型 DataSet ds = new D

我从Datagrid中获取值,将其存储到textfield中,并通过submit按钮将值转储到数据库中,同时我再次调用同一个表以刷新该按钮。但这里我得到一个异常

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

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

无法将“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();

这意味着您的
ds.Tables
datagridDocSchedule.SelectedItems
为空。 调试你的代码,看看哪个是空的