2009-12-07 22 views
6

何が起こっているのか誰かが説明しましたか?コード1をコード2に変更すると、問題は解決されます。理論的には違いはありません。 (理論は、カボチャがレンガの壁に当たったように練習します)。DataGridViewがCで更新されない#


コード1:

OutputDataGridView.DataSource = myList; 

コード2:

OutputDataGridView.DataSource = null; 
OutputDataGridView.DataSource = myList; 
+0

と(もしあれば)どのような条件の下を見たことがありますか? –

+0

私は簡単なフォームを作成して、Userオブジェクトのリストに新しいUserオブジェクトを追加します。最初に、DataSourceがUserオブジェクトの既存のリストに割り当てられます。フォームのテキストフィールドから新しいUserオブジェクトを作成した後、新しいオブジェクトがリストに追加されます。更新はありません。同じリスト(コード1)に再割り当てしようとしました。更新はありません。私はコード2に変更し、それがうまくいきます。 –

答えて

2

については

は、このリンク

simple DataGridView refresh question

ページのライフサイクルにデータソースが割り当てられ
+0

ありがとう、私はすでに解決策を持っているので、これらをもっと詳細に読む必要がありますが、なぜそれが機能するのか分かりません。「それだけで問題が戻ってくる」という言い方があります。私はアナログが誤解された修正用であるかどうかは分かりませんが、おそらく "ハッキングで修正されたコードは別のハックで壊れてしまいます" –

1
protected void btnWhateverClick(object sender, EventArgs e) 
{ 
    myGridView.DataSourceID = String.Empty; 
    myGridView.DataSource = new int[0]; 
    myGridView.DataBind(); 
} 

、あなたは完了です。参考DataSource in gridview

関連する問題