3

こんばんは

.NETWindowsフォームプロジェクトのDataGridViewに少し問題があります。グリッドは読み取り専用であり、BindingList<T>カスタムビジネスオブジェクトを含むソート可能オブジェクトにバインドされています。私のビジネスオブジェクトクラスはを実装しIEditableObjectます。

これで、グリッド内を移動している間、メソッドBeginEditとメソッドが常に呼び出されます。EndEditグリッドまたはバインディングソースがこれを実行しないようにする方法はありますか?明示的に読み取り専用に設定されているため(ReadOnly = true)、これらのメソッドを何度も呼び出す理由はまったくありません(いいえ、何も表示されないことに注意してください)。

読んでくれてありがとう :)

マティアス

4

1 に答える 1

2

問題を複製した後、DataGridViewはメソッド/イベントのチェーンを呼び出し、最終的にはIEditableObjectイベントを呼び出しているようです...

これは、BindingListをDataGridView.DataSourceに設定したとき、およびグリッド内を移動したときに発生します。

DataGridView用に選択したEditModeに関係なく、コードはBusinessObjectsのIEditableObject.EndEdit()メソッドにステップインします。

これはフレームワークの古いバグのようです...このバグレポートを見つけました。

このバグレポートは非​​常に古いものです。これがまだ問題であるかどうかは100%わかりません...おそらくこれを解決するためのいくつかのプロパティがすでにあります。

何かご意見は?

于 2008-11-11T17:38:08.277 に答える