2016-08-10 27 views
-2

私はDatagridから価値を得て、それをテキストフィールドに格納し、サブミットボタンを使用して値をデータベースにダンプし、同じボタンを再度呼び出してそのボタンの目的をリフレッシュしています。例外を取得しています...Datagrid、インデックスが範囲外でした

インデックスが範囲外です。負でなく、 コレクションのサイズより小さくする必要があります。パラメータ名:インデックス

私は別の問題がありますが、余分な行を生成しているということです。なぜそれが起こっているのか分からない。そしてその余分な行をクリックすると、私のプログラムは別の例外を表示します。

「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

それはあなたのds.TablesdatagridDocSchedule.SelectedItemsが空であることを意味しています。 コードをデバッグし、どちらが空であるかを確認します。

関連する問題