Visual Studio を使用して .NET Framework アプリケーションのデータにコントロールをバインドする
Note
データセットと関連クラスは、アプリケーションがデータベースから切断されている間にアプリケーションがメモリ内のデータを操作できるようにする、2000 年代初期からのレガシ .NET Framework テクノロジです。 テクノロジが特に役立つのは、ユーザーがデータを変更し、変更をデータベースに戻して保持できるようにするアプリケーションです。 データセットは非常に優れたテクノロジであることが証明されていますが、新しい .NET アプリケーションでは Entity Framework Core を使用することをお勧めしています。 Entity Framework には、オブジェクト モデルとして表形式データを操作する、より自然な方法が用意されており、よりシンプルなプログラミング インターフェイスが備わっています。
データをコントロールにバインドすることで、アプリケーションのユーザーに対してデータを表示できます。 これらのデータバインド コントロールを作成するには、Visual Studio で [データ ソース] ウィンドウからデザイン サーフェイスまたはサーフェイス上のコントロールに項目をドラッグします。
ここでは、データ バインディング コントロールを作成するために使用できるデータ ソースについて説明します。 また、データ バインディングに関連する一般的なタスクについても説明します。 データバインド コントロールの作成方法の詳細については、「Visual Studio でのデータへの Windows フォーム コントロールのバインド」および「Visual Studio でデータに WPF コントロールをバインドする」をご覧ください。
データ ソース
データ バインディングのコンテキストでは、データ ソースは、ユーザー インターフェイスにバインドできるメモリ内のデータを表します。 具体的に言うと、データ ソースは、Entity Framework クラス、データセット、.NET プロキシ オブジェクトにカプセル化されたサービス エンドポイント、LINQ to SQL クラス、あるいは任意の .NET オブジェクトまたはコレクションです。 一部のデータ ソースでは、[データ ソース] ウィンドウから項目をドラッグすることによりデータ バインディング コントロールを作成できますが、その他のデータ ソースではできません。 サポートされるデータ ソースを次の表に示します。
データ ソース | Windows フォーム デザイナーでのドラッグ アンド ドロップのサポート | WPF デザイナーでのドラッグ アンド ドロップのサポート | Silverlight デザイナーでのドラッグ アンド ドロップのサポート |
---|---|---|---|
データセット | はい | はい | いいえ |
エンティティ データ モデル | 可1 | ○ | はい |
LINQ to SQL クラス | いいえ2 | いいえ2 | いいえ2 |
サービス (WCF Data Services、WCF サービス、Web サービスを含む) | はい | イエス | はい |
Object | はい | イエス | はい |
SharePoint | はい | イエス | はい |
Entity Data Model ウィザードを使用してモデルを生成し、それらのオブジェクトをデザイナーにドラッグします。
LINQ to SQL クラスは、[データ ソース] ウィンドウに表示されません。 ただし、LINQ to SQL クラスに基づく新しいオブジェクト データ ソースを追加し、それらのオブジェクトをデザイナーにドラッグして、データ バインディング コントロールを作成できます。 詳細については、LINQ to SQL クラスを作成する方法 (O/R デザイナー) のチュートリアルをご覧ください。
[データ ソース] ウィンドウ
データ ソースは、[データ ソース] ウィンドウ内の項目としてプロジェクトで利用できます。 このウィンドウは、フォームのデザイン サーフェイスがプロジェクトのアクティブ ウィンドウである場合に表示されます。また、 [表示]>[その他のウィンドウ]>[データ ソース] を選択して開くこともできます (プロジェクトが開いている場合)。 このウィンドウから項目をドラッグして、基になるデータにバインドされたコントロールを作成できます。また、右クリックしてデータ ソースを構成することもできます。
[データ ソース] ウィンドウに表示されるデータ型ごとに、項目をデザイナーにドラッグしたときに既定のコントロールが作成されます。 [データ ソース] ウィンドウから項目をドラッグする前に、作成されるコントロールを変更できます。 詳細については、「[データ ソース] ウィンドウからドラッグしたときに作成されるコントロールを設定する」をご覧ください。
データへのコントロールのバインドに関連するタスク
次の表に、コントロールをデータにバインドするために実行する最も一般的なタスクを示します。
タスク | 詳細情報 |
---|---|
[データ ソース] ウィンドウを開く。 | エディターでデザイン サーフェイスを開き、 [表示]>[データ ソース] を選択する。 |
プロジェクトにデータ ソースを追加する。 | 新しいデータ ソースの追加 |
[データ ソース] ウィンドウからデザイナーに項目をドラッグしたときに作成されるコントロールを設定する。 | [データ ソース] ウィンドウからドラッグしたときに作成されるコントロールを設定する |
[データ ソース] ウィンドウの項目に関連付けられるコントロールのリストを変更する。 | [データ ソース] ウィンドウにカスタム コントロールを追加する |
データ バインド コントロールを作成する。 | Visual Studio でのデータへの Windows フォーム コントロールのバインド Visual Studio でデータに WPF コントロールをバインドする |
オブジェクトまたはコレクションにバインドする。 | Visual Studio でオブジェクトをバインドする |
UI に表示されるデータをフィルター処理する。 | Windows フォーム アプリケーションのデータのフィルター処理および並べ替えを行う |
コントロールのキャプションをカスタマイズする。 | Visual Studio がデータ バインド コントロールのキャプションを作成する方法をカスタマイズする |