DataGridView のページネーション: カスタム ソリューション
多くのアプリケーションでは、大量のデータを表形式で表示する必要がありますが、 1 ページに表示されるレコードの数を制限します。 WinForms の DataGridView でページネーションを実現するのは困難に思えるかもしれませんが、カスタム アプローチを使用すると、シンプルで効率的なソリューションを提供できます。
カスタム IListSource の作成
組み込みの IListSource に依存するのではなく、 DataGridView のプロパティで、このメソッドは IListSource インターフェイスのカスタム実装を利用します。このクラス PageOffsetList は、レコードの総数と必要なページ サイズに基づいてページ オフセットのリストを生成します。
イベント処理とデータ取得
ユーザーがBindingNavigator を使用して別のページに移動すると、bindingSource1_CurrentChanged イベントが発生します。このイベントは、BindingSource の現在位置からページ オフセットを取得し、それを使用して、対応するページのレコードをフェッチします。
実装例
提供されたコード例は、次の方法を示しています。カスタム クラスとイベント処理を使用してページネーションを実現します。 DataGridView を列で初期化し、BindingNavigator をバインド操作のソースとして設定します。 bindingSource1 オブジェクトは、PageOffsetList をデータ ソースとして使用するように構成され、bindingSource1_CurrentChanged イベントはデータの取得と表示をトリガーするためにサブスクライブされます。
要約すると、このカスタム アプローチは柔軟な方法を提供することで、DataGridView でのページネーションを簡単に行うことができます。ページ オフセットを管理し、オンデマンドでデータを取得します。これは、大規模なデータセットをユーザーフレンドリーな方法で表示するための、シンプルで保守可能なソリューションを提供します。
以上がWinForms DataGridView にカスタム ページネーションを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。