LiveLinq ビューを GUI コントロールのデータソースとして使用できます。LiveLinq ビューはデータ連結インタフェースを実装しているため、任意のコントロールを他のデータソースと同様に簡単に LiveLinq ビューに連結できます。次に WinForms の例を示します。
C# |
コードのコピー
|
---|---|
View<T> view = from a in A.AsLive() join b in B.AsLive() on a.k equals b.k where a.p == 5 select new {a, b}; dataGridView1.DataSource = view; |
データ連結は長らく、GUI を作成する開発者の大部分に選択されるツールとなってきましたが、その対象は単純なケースに限定されていました。基本コレクション、データセットテーブルなどのベースデータには連結できましたが、派生データや何からのクエリーによって形成されたデータには連結できませんでした。何らかの形成をサポートするツールもありましたが、機能は非常に限定され、ほとんどはフィルタ処理やソートを実行するだけでした。たとえば、結合(極めて普通の例)などのより複雑な方法で派生/形成されたデータがある場合は、データ連結を使用できませんでした(正確に言えば、一度のスナップショット連結とデータ表示にのみ使用でき、変更は不可能)。
LiveLinq は、このような制限を取り去ることで、データ連結を極めて強力な機能にします。これで、連結先となる LINQ の能力を完全に活用できます。
ライブビューがあれば、ほぼ手続き型コードなしで、宣言型データ連結だけを使用して、高度なアプリケーションの GUI 全体を作成できます。このようなアプリケーションの例として、LiveLinqIssueTracker デモがあります。