Share via


方法: Visual Studio でデータに WPF コントロールをバインドする

データ バインド WPF コントロールを作成するには、[データ ソース] ウィンドウを使用します。 まず、[データ ソース] ウィンドウにデータ ソースを追加します。 次に、[データ ソース] ウィンドウから WPF デザイナーに項目をドラッグします。

[データ ソース] ウィンドウへのデータ ソースの追加

データ バインド コントロールを作成するには、まず、[データ ソース] ウィンドウにデータ ソースを追加する必要があります。

[データ ソース] ウィンドウにデータ ソースを追加するには

  1. [データ] メニューの [データ ソースの表示] をクリックして [データ ソース] ウィンドウを開きます。

  2. [新しいデータ ソースの追加] をクリックして、データ ソース構成ウィザードの操作を完了します。

  3. 次のいずれかのタスクを実行して、データ バインド コントロールを作成します。

    • 単一のデータ フィールドにバインドされるコントロールを作成する。

    • 複数のデータ フィールドにバインドされるコントロールを作成する。

    • 複数のデータ フィールドにバインドされるコントロール セットを作成する。

    • デザイナー内の既存のコントロールにデータをバインドする。

単一のデータ フィールドにバインドされるコントロールの作成

[データ ソース] ウィンドウにデータ ソースを追加すると、ComboBoxTextBox など、単一のデータ フィールドを表示する新しいデータ バインド コントロールを作成できます。

単一のデータ フィールドにバインドされるコントロールを作成するには

  1. [データ ソース] ウィンドウで、テーブルまたはオブジェクトを表す項目を展開します。 バインドする列またはプロパティを表す子項目を検索します。 表示例については、「[データ ソース] ウィンドウ」を参照してください。

  2. 必要に応じて、作成するコントロールを選択します。 [データ ソース] ウィンドウの各項目には、デザイナーに項目をドラッグしたときに作成される既定のコントロールが関連付けられています。 既定のコントロールは、項目の基になるデータ型によって異なります。

    既定以外のコントロールを選択するには、項目の横にあるドロップダウン矢印をクリックし、コントロールを選択します。 詳細については、「方法 : [データ ソース] ウィンドウからドラッグしたときに作成されるコントロールを設定する」を参照してください。

  3. デザイナーで、Grid などの有効なコンテナーに項目をドラッグします。 有効なコンテナーの詳細については、「Visual Studio でのデータへの WPF コントロールのバインド」を参照してください。

    Visual Studio によって、新しいデータ バインド コントロールと適切なタイトルの付いた Label がコンテナー内に作成されます。 また、Visual Studio によって、データにコントロールをバインドするための XAML とコードが生成されます。 詳細については、「Visual Studio でのデータへの WPF コントロールのバインド」を参照してください。

複数のデータ フィールドにバインドされるコントロールの作成

[データ ソース] ウィンドウにデータ ソースを追加すると、DataGridListView など、複数のデータ フィールドを表示する新しいデータ バインド コントロールを作成できます。

複数のデータ フィールドにバインドされるコントロールを作成するには

  1. [データ ソース] ウィンドウで、テーブルまたはオブジェクトを表す項目を選択します。 表示例については、「[データ ソース] ウィンドウ」を参照してください。

  2. 必要に応じて、作成するコントロールを選択します。 既定では、データ テーブルまたはオブジェクトを表す [データ ソース] ウィンドウ内の各項目が、DataGrid (プロジェクトの対象が .NET Framework 4 の場合) または ListView (旧バージョンの .NET Framework の場合) を作成するように設定されます。

    既定以外のコントロールを選択するには、項目の横にあるドロップダウン矢印をクリックし、コントロールを選択します。 詳細については、「方法 : [データ ソース] ウィンドウからドラッグしたときに作成されるコントロールを設定する」を参照してください。

    注意

    特定の列またはプロパティを表示しないようにする場合は、項目を展開してその子を表示します。 表示しない列またはプロパティの横にあるドロップダウン矢印をクリックし、[なし] をクリックします。

  3. デザイナーで、Grid などの有効なコンテナーに項目をドラッグします。 有効なコンテナーの詳細については、「Visual Studio でのデータへの WPF コントロールのバインド」を参照してください。

    Visual Studio によって、新しいデータ バインド コントロールがコンテナー内に作成されます。Visual Studio は、コントロールをデータにバインドする XAML とコードも生成します。 詳細については、「Visual Studio でのデータへの WPF コントロールのバインド」を参照してください。

複数のデータ フィールドにバインドされるコントロール セットの作成

[データ ソース] ウィンドウにデータ ソースを追加すると、コントロール セットにデータ テーブルまたはオブジェクトをバインドできます。 テーブルまたはオブジェクトの列やプロパティごとに、異なるコントロールが作成されます。

複数のデータ フィールドにバインドされるコントロール セットを作成するには

  1. [データ ソース] ウィンドウで、テーブルまたはオブジェクトを表す項目を選択します。 表示例については、「[データ ソース] ウィンドウ」を参照してください。

  2. 項目の横にあるドロップダウン矢印をクリックし、[詳細] を選択します。

    注意

    特定の列またはプロパティを表示しないようにする場合は、項目を展開してその子を表示します。 表示しない列またはプロパティの横にあるドロップダウン矢印をクリックし、[なし] をクリックします。

  3. デザイナーで、Grid などの有効なコンテナーに項目をドラッグします。 有効なコンテナーの詳細については、「Visual Studio でのデータへの WPF コントロールのバインド」を参照してください。

    Visual Studio によって、新しいデータ バインド コントロールがコンテナー内に作成されます。 各コントロールは別々の列またはプロパティにバインドされ、適切なタイトルの Label コントロールが追加されます。Visual Studio は、コントロールをデータにバインドする XAML とコードも生成します。 詳細については、「Visual Studio でのデータへの WPF コントロールのバインド」を参照してください。

デザイナー内の既存のコントロールへのデータのバインド

[データ ソース] ウィンドウにデータ ソースを追加すると、デザイナー内の既存のコントロールにデータ バインディングを追加できます。

デザイナー内の既存のコントロールにデータをバインドするには

  1. [データ ソース] ウィンドウで、次のいずれかの手順を実行します。

    • DataGridListView など、複数のデータ フィールドを表示する既存のコントロールにデータ バインディングを追加するには、コントロールにバインドするテーブルまたはオブジェクトを表す項目を選択します。

    • ComboBoxTextBox など、単一のデータ フィールドを表示する既存のコントロールにデータ バインディングを追加するには、データが格納されているテーブルまたはオブジェクトを表す項目を展開し、コントロールにバインドするデータを表す項目を選択します。

  2. [データ ソース] ウィンドウから、選択した項目をデザイナー内の既存のコントロールにドラッグします。 コントロールは、有効なドロップ ターゲットである必要があります。 詳細については、「Visual Studio でのデータへの WPF コントロールのバインド」を参照してください。

    Visual Studio によって、コントロールをデータにバインドする XAML とコードが生成されます。 詳細については、「Visual Studio でのデータへの WPF コントロールのバインド」を参照してください。

    注意

    コントロールが既にデータにバインドされている場合は、コントロールのデータ バインディングが、最後にコントロールにドラッグされた項目に再設定されます。

参照

処理手順

方法: WPF アプリケーションでルックアップ テーブルを作成する

方法: WPF アプリケーションで関連データを表示する

チュートリアル: Entity Data Model への WPF コントロールのバインド

チュートリアル: データセットへの WPF コントロールのバインド

チュートリアル: WCF Data Service への WPF コントロールのバインド

チュートリアル: WPF アプリケーションでの関連データの表示

概念

Visual Studio でのデータへの WPF コントロールのバインド