次の方法で共有


BindingSource コンポーネントの概要

BindingSource コンポーネントは、基になるデータ ソースにコントロールをバインドするプロセスを簡略化するように設計されています。 BindingSource コンポーネントは、コンジット、および他のコントロールがバインドするデータ ソースとして動作します。 このコンポーネントは、フォームのデータ接続を抽象化し、基になるデータ リストにコマンドを渡します。 また、コンポーネント自体がデータ ソースとして機能するように、直接データを追加できます。

媒介手段としての BindingSource コンポーネント

BindingSource コンポーネントは、フォーム上のコントロールの一部またはすべてのデータ ソースとして機能します。 Visual Studio では、BindingSource は、[プロパティ] ウィンドウからアクセスできる DataBindings プロパティを使用してコントロールにバインドできます。 詳細については 方法 : デザイナを使用して Windows フォーム コントロールを BindingSource コンポーネントにバインドする および 方法 : デザイナを使用して Windows フォーム コントロールを BindingSource コンポーネントにバインドする および 方法 : デザイナを使用して Windows フォーム コントロールを BindingSource コンポーネントにバインドする および 方法 : デザイナーを使用して Windows フォーム コントロールを BindingSource コンポーネントにバインドする.

BindingSource コンポーネントは、単純なデータ ソース (オブジェクトのシングル プロパティ、ArrayList のような基本的なコレクションなど) と複雑なデータ ソース (データベース テーブルなど) の両方にバインドできます。 BindingSource コンポーネントは、バインディングおよび伝達性管理サービスを提供する媒介手段として機能します。 デザイン時や実行時には、DataSource プロパティと DataMember プロパティをそれぞれデータベースとテーブルに設定して BindingSource コンポーネントを複雑なデータ ソースにバインドできます。 BindingSource コンポーネントの既存のデータ バインディング アーキテクチャにおける位置づけを次の図に示します。

バインディング ソースとデータ バインディング アーキテクチャ

注意

デザイン時の一部のアクション (データ ウィンドウから空白のフォームへのデータベース テーブルのドラッグなど) によって、BindingSource コンポーネントが作成され、基になるデータ ソースにバインドされ、データ バインディングに対応したコントロールが追加されます。これらはすべて 1 つの操作によって実行されます。 詳細については データの表示の概要 および データの表示の概要 および Visual Studio でのデータへの Windows フォーム コントロールのバインド および Visual Studio でのデータへの Windows フォーム コントロールのバインド.

データ ソースとしての BindingSource コンポーネント

最初にバインド先のリストを指定せずに BindingSource コンポーネントに項目を追加し始めると、このコンポーネントはリスト形式のデータ ソースとして動作し、追加した項目を受け入れます。

また、AddingNew イベントを使用して、カスタムの "AddNew" 機能を提供するコードを記述することもできます。このイベントは、リストに項目が追加される前に AddNew が呼び出されると発生します。 詳細については、「BindingSource コンポーネント アーキテクチャ」を参照してください。

BindingNavigator コンポーネントは、BindingSource コンポーネントと連携して、フォーム上のデータを移動する必要があるユーザーがデータを移動および操作できるようにします。 詳細については、「BindingNavigator コントロール (Windows フォーム)」を参照してください。

データの操作

BindingSource は、すべてのバインディングの CurrencyManager として動作するため、データ ソースに関する伝達性情報および位置情報へのアクセスを提供します。 基になるデータへのアクセスおよび操作ができるように BindingSource コンポーネントが提供するメンバーを次の表に示します。

メンバー

説明

Current プロパティ

データ ソースの現在の項目を取得します。

Position プロパティ

基になるリストでの現在の位置を取得または設定します。

List プロパティ

DataSource および DataMember の評価を含むリストを取得します。 DataMember が設定されていないときは、DataSource によって指定されたリストを返します。

Insert メソッド

リスト内の指定されたインデックス位置に項目を挿入します。

RemoveCurrent メソッド

リストから現在の項目を削除します。

EndEdit メソッド

基になるデータ ソースに保留中の変更を適用します。

CancelEdit メソッド

現在の編集操作をキャンセルします。

AddNew メソッド

基になるリストに新しい項目を追加します。 データ ソースが IBindingList を実装し、AddingNew イベントから項目を返した場合は、その項目を追加します。 それ以外の場合は、リストの AddNew メソッドに要求が渡されます。 基になるリストが IBindingList でない場合は、既定のパブリック コンストラクターを使用して項目が自動的に作成されます。

並べ替えとフィルター処理

通常、一定の順序で並べられた、またはフィルター処理されたデータ ソースのビューを使用します。 BindingSource コンポーネント データ ソースが提供するメンバーを次の表に示します。

メンバー

説明

Sort プロパティ

データ ソースが IBindingList である場合は、並べ替えに使用する列名と並べ替え順序情報を取得または設定します。 データ ソースが IBindingListView であり、高度な並べ替えをサポートしている場合は、並べ替えに使用する複数の列名と並べ替え順序情報を取得します。

Filter プロパティ

データ ソースが IBindingListView である場合は、表示する行のフィルター処理に使用する式を取得または設定します。

参照

参照

BindingSource

BindingNavigator

概念

BindingSource コンポーネント アーキテクチャ

その他の技術情報

BindingSource コンポーネント

BindingNavigator コントロール (Windows フォーム)

Windows フォームでのデータ バインディング

Windows フォームで使用するコントロール