次の方法で共有


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

データ バインド コントロールを作成するには、[データ ソース] ウィンドウから Silverlight Designer に項目をドラッグします。

Visual Studio でのデータ バインド コントロールの作成に関する一般的な情報については、「Visual Studio でのデータへのコントロールのバインド」を参照してください。 Silverlight でのデータ バインディングの詳細については、「データ バインディング」を参照してください。

生成される XAML およびコード

[データ ソース] ウィンドウから Silverlight デザイナーに項目をドラッグすると、Visual Studio により、新しいデータ バインド コントロールを定義する (または、既存のコントロールをデータ ソースにバインドする) XAML が生成されます。

[データ ソース] ウィンドウからデザイナーに項目をドラッグすると、Visual Studio により、次の処理を行う XAML が生成されます。

  • データの移動およびデータへのバインドに使用できる、新しい CollectionViewSource をページ リソースに追加します。

  • グリッドの空の領域に項目をドロップした場合、その項目にデータ バインドした新しいコントロールが作成されます。

  • 既存のコントロール上に項目をドロップした場合、そのコントロールが項目にデータ バインドするように構成されます。

Visual Studio は、分離コード ファイルに次の変更も加えます。

  • Loaded() イベント ハンドラーを作成し、次に示すヘルパー コメントを含めます。 コードをコメントから外し、"Resource Key for CollectionViewSource" を、生成された CollectionViewSource の名前で置き換えます。 また、"your data" を、カスタム ビジネス オブジェクトのコレクションへのポインターで置き換えます。 このコメントを変更する方法を示す例については、「チュートリアル: オブジェクトへの Silverlight コントロールのバインド」を参照してください。

    // Do not load your data at design time.
    // if (!System.ComponentModel.DesignerProperties.GetIsInDesignMode(this))
    // {
    //    //Load your data here and assign the result to the CollectionViewSource.
    //    System.Windows.Data.CollectionViewSource myCollectionViewSource = (System.Windows.Data.CollectionViewSource)this.Resources["Resource Key for CollectionViewSource"];
    //     myCollectionViewSource.Source = your data
    // }
    
    'Do not load your data at design time.
    'If Not (System.ComponentModel.DesignerProperties.GetIsInDesignMode(Me)) Then
    '    'Load your data here and assign the result to the CollectionViewSource.
    '    Dim myCollectionViewSource As System.Windows.Data.CollectionViewSource = CType(Me.Resources("Resource Key for CollectionViewSource"), System.Windows.Data.CollectionViewSource)
    '    myCollectionViewSource.Source = your data
    'End If
    

サービス

[データ ソース] ウィンドウからデザイナーにサービス オブジェクトまたはプロパティをドラッグすると、Visual Studio は、データ バインド コントロールを作成する (オブジェクトまたはプロパティに既存のコントロールをバインドする) XAML を生成します。 ただし、Visual Studio はプロキシ サービス オブジェクトにデータを読み込むコードを生成しません。 このコードは、ユーザーが手動で記述する必要があります。 この方法を示す例については、「チュートリアル: WCF Data Service への Silverlight コントロールのバインド」を参照してください。

オブジェクト

[データ ソース] ウィンドウからデザイナーにオブジェクトまたはプロパティをドラッグすると、Visual Studio は、データ バインド コントロールを作成する (オブジェクトまたはプロパティに既存のコントロールをバインドする) XAML を生成します。 ただし、Visual Studio はオブジェクトにデータを読み込むコードを生成しません。 このコードは手動で記述する必要があります。この方法を示す例については、「チュートリアル: オブジェクトへの Silverlight コントロールのバインド」を参照してください。

関連トピック

次の表に、Silverlight アプリケーションで [データ ソース] ウィンドウから項目をドラッグすることによりデータ バインド コントロールを作成する方法を示すトピックの一覧を示します。

タスク

詳細情報

サービスによって返されたデータにバインドするコントロールを作成する。

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

オブジェクト内のデータにバインドするコントロールを作成する。

チュートリアル: オブジェクトへの Silverlight コントロールのバインド

参照

その他の技術情報

Silverlight

Data Access and Data Structures (データ アクセスとデータ構造)