0

LINQ を使用して C# で DataGridView を作成します。次に、ユーザーがそのデータをダブルクリックすると、データを編集するためのフォームがポップアップ表示されます。私が欲しいのは、ポップアップを閉じた後、DataGridView のデータが自動的に更新されることです。

private void cooperationsDataGridView_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            frmKoperasi frm = new frmKoperasi (cooperationsDataGridView.CurrentRow.Cells["id"].Value.ToString());
            frm.FormClosed += delegate { refresh(sender,e); };
            frm.Show();                                            
        }

private void refresh(object sender, EventArgs e)
   {
       this.listKoperasi_Load(sender, e);           
   }

private void listKoperasi_Load(object sender, EventArgs e)
    {
        page = page - 1;
        var query = (from c in db_cooperations.cooperations
                     orderby c.id
                     select c).Skip(numberOfObjectsPerPage * page).Take(numberOfObjectsPerPage);

        cooperationsBindingSource.DataSource = query;           
    }

しかし、編集フォームを閉じた後、データが更新されません。何が間違っている可能性がありますか?

4

2 に答える 2

0

最後に、最初からすべてを書き直して、ただうまくいくだけです。なぜそれが起こるのかわからない:D

于 2013-01-23T14:50:03.873 に答える
0

追加するだけ.ToList()

cooperationsBindingSource.DataSource = query.ToList();
于 2013-01-21T19:43:11.470 に答える