1

良い一日!

VS2010でGridControlでコード化されたUIテストに関連する問題を見つけました。純粋な状態では、GridControlは完全にテストしますが、機能を追加すると、テストは失敗します。

GridView複数選択オプション用の編集可能なチェックボックス列を作成したい。この列がデータテーブル列「B_Checked」にバインドされていると便利です。DevExpress GridControl行の変更時にデータを基になるデータソースにプッシュするように設計されています。その振る舞いを変えたい。DevExpressは、このようなケースを解決するためにrepositoryItemCheckEdit1_EditValueChangedイベント->を使用することをお勧めしますPostEditor()

   private void repositoryItemCheckEdit1_EditValueChanged(object sender, EventArgs e)
    {
        this.gridView1.PostEditor();
        this.gridView1.UpdateCurrentRow();
    }

その場合、複数選択列のすべての変更はすぐにデータソースにコミットされますが、UIテストは機能しなくなります((。列の状態に加えられた変更は認識されないため、たとえば再生時にすべての行をチェックすると、認識されません)見てください。

誰かがその問題に遭遇しましたか?

4

1 に答える 1

1

わかった。私にとってうまくいった唯一の解決策は、GridView のDoChangeFocusedRowInternalメソッドをオーバーライドして、常に FocusedRowChanged イベントをスローするようにすることです。

于 2012-09-27T06:37:06.747 に答える