2011-12-02 9 views
0

こんにちはみんな、私はSilverlightの4プロジェクト項目のソースのデータ形式があります:バインドSilverlightのデータ形式

ItemsSource="{Binding Data, ElementName=domainDataSource1, Mode=TwoWay}" 

とドメインのデータソースは次のとおりです。

<riaControls:DomainDataSource Name="domainDataSource1" QueryName="GetCarsQuery" AutoLoad="True"> 
     <riaControls:DomainDataSource.DomainContext> 
      <domain:DataDomainContext/> 
     </riaControls:DomainDataSource.DomainContext> 
    </riaControls:DomainDataSource> 

私の車の表はトレーラーテーブルと関係を持っています。私は私のデータフォームにコンボボックスを持っています。私はどのようにコンボボックスを別のクエリにバインドすることができるのかをすべてのトレーラーマークを表示したいのですか? そして、ユーザーがデータを保存するとき、どのようにマーク付きトレーラーIDを取得できますか?

おかげ

答えて

1

まず私はデータフォームにネストコンボボックスが現在SL5のような非常にバグがあると言って、このはじめてみましょう。しかし、ここであなたは、これはEntity Frameworkを使用している行く:

関連するクラス:あなたのXAMLで

public class TrailerListProvider : UserControl 
{ 
    myDomainContext _dc; 
    public myDomainContext DomainContext 
    { 
     set 
     { 
      _dc = value; 
      _dc.Load<trailer>(_dc.GetTrailersQuery()); 

     } 
    } 
    public TrailerListProvider() 
    { 
     DomainContext = new myDomainContext(); 
    } 
    public List<trailer> VendorList 
    { 
     get 
     { 
      return (from t in _dc.trailers 
        orderby t.trailerMark 
        select t).ToList(); 
     } 
    } 
} 

<Control.Resources> 
    <myClasses:TrailerListProvider x:Key="trailerListProvider"></myClasses:TrailerListProvider> 
</Control.Resources> 

そして最後に、あなたのコンボボックスで(またはのItemsSourceで何でも制御):

ItemsSource = {Binding Path=VendorList, ElementName={StaticResource trailerListProvider}} 
関連する問題