2

DevExpress GridView にバインドするために使用する DataTable があります。

私のDataTableは動的です。つまり、4列になることもあれば、20列になることもあります。 DataTable には 4 つの列しかありません。私の GirdView は、その時点で私の DataTable にある 4 つの列のみに値を持つ 20 列すべてを表示します。

この問題を解決するにはどうすればよいですか?

添付はスクリーンショットです。ここに画像の説明を入力

いくつかのメモリインスタンスのクリア/オブジェクトの破棄と関係がありますか? もしそうなら、DevExpress GridView の API を手伝ってください。

アップデート

このコード呼び出しは、データソースを設定します

bindingSource1.DataSource = dtBindToGridView; // MyDataTable
gcAnalysisTaskPermission.DataSource = bindingSource1; //My GridView 
bindingSource1.ResetBindings(true); // Reset the BindingSource

ありがとう、

マンゲッシュ

4

2 に答える 2

3

まず、以下のようにデータ ソースをリセットしてみてください。

grid.DataSource = null;
grid.DataSource = GetData();

バインディングソースがある場合、これは機能しません

コールしgridView.PopulateColumns()ます。

于 2013-05-16T08:19:50.867 に答える
2

を使用している場合はBindingSourceResetBinding()

public void SetData()
{
   //setting the datasource of your binding source
   myBindingSource.DataSource = GetMyDataTable(); 

   //after the datasource has been set, call this.
   //use true, because the metadata has changed
   myBindingSource.ResetBindings(true); 
}

アップデート

DevExpressによると、電話してみることができますPopulateColumns

public void SetData()
{
   //setting the datasource of your binding source
   myBindingSource.DataSource = GetMyDataTable(); 

   gridView1.PopulateColumns();
}
于 2013-05-16T07:49:06.240 に答える