0

クラスにバインドされたデータグリッドがあります。私の要件は、クラスとのバインディングを削除せずに、データグリッドのすべての行を削除することです。

一言で言えば、データグリッドを元の状態にリセットしたいだけです。

        trialCollection = new ObservableCollection<trialClass>();
        trialCollection.Add(new trialClass());
        trialGrid.DataContext = trialCollection;
4

2 に答える 2

0

それらをバインディング ソース (バインディングではなく、そこからの行) から削除します。あなたBindingModeがに設定されている場合TwoWay、それは動作するはずです。

DataGrid がクラスにバインドされていて、バインディングではなくコンテンツをリセットしたい場合は、クラスに移動し、コレクションの場合はClear()メソッドを適用し、それ以外の場合は手動でクリアします。これを行うと、DataGrid は同じバインディングに更新されますが、今は空なので、必要に応じて空の DataGrid になります。

于 2012-09-18T13:19:01.747 に答える
0

DataBindings プロパティまたは DataSource プロパティを使用して、datagridview をデータ ソースにバインドしますか?

DataBindings プロパティを使用している場合は、これを試してください。

this.dataGridView2.DataBindings.Clear();

または

this.dataGridView2.DataBindings.Remove(dataBind);

DataSource プロパティを使用している場合は、DataGridView.DataSource を null に設定すると問題ないようです。これを試してみましたが、プログラムで新しい行を追加するとエラーが発生したため、サンプルコードを提供していただけますか?

于 2012-09-18T13:56:13.057 に答える