0

私の C# プログラムではultrawingrid、データベースから入力されていSQL CEます。私の refreshGrid() 関数は、ユーザーが実行するすべての関連アクションの後に呼び出されます。関数は別の SQL クエリを呼び出し、データをデータテーブルに保存し、これをグリッド データ ソースとして設定します。

ただし、私の問題は、更新機能が呼び出されるたびに垂直スクロールバーの位置がリセットされることです。そのため、グリッドビューはグリッドの上部にリセットされます。

私の最初の考えは、スクロールバーの位置を変数として保存し、リフレッシュ後にスクロールバーをその位置に戻すことでした。しかし、どうすればこれを行うことができますか?それとも別の代替手段がありますか?

4

1 に答える 1

2

解決しました。リフレッシュ前にスクロール位置を取得し、後で設定します。

var scrollPos = grid.ActiveRowScrollRegion.ScrollPosition;
refresh();
grid.ActiveRowScrollRegion.ScrollPosition = scrollPos;
于 2013-02-28T13:04:00.707 に答える