WinGrid™ は、データベースに関連するデータ ソースで最も幅広く使用されています。WinGrid は階層的データの表示を処理するために設計されています。ただし、.NET アプリケーションのオブジェクト指向の性質のため、WinGrid は、DataTable、DataSet、および DataView コントロールによって表されるインタフェースを実装するデータ モデルにバインドできます。これらの最もシンプルなものが IList インタフェースです。
Array クラスは IList インタフェースを実装し、一次元配列を WinGrid にバインドできます。多次元データの内部保存は WinGrid が理解する保存技術と互換性がないので、多次元配列を WinGrid にバインドできません。
IList インタフェースを実装する固有のクラスを作成できるので、ユーザーは WinGrid に提示されるデータを完全に制御できます。
IBindingList インタフェースは DataTable および DataSet オブジェクトによって公開されるインタフェースなので、最も人気の高いインタフェースのひとつです。WinGrid は、基本オブジェクト モデルに基づきスキーマを作成するために、エンティティの各レベルごとに Binding Manager をクエリします。複数のエンティティ(Customers、Orders および Order Details)を含む DataSet にバインドする場合、Binding Manager は階層的な表示で同時にすべてを使用できるように各エンティティのスキーマを同時に正しく発行します。カスタム設計されたビジネス オブジェクトでも同じことが当てはまります。グリッドは Binding Manager によって提供される構造だけを表すことができます。Binding Manager がカスタム コレクションおよび子メンバを認識しない場合、WinGrid も認識しません。