2011-12-02 2 views
0
Silverlight

Привет ребята я есть DataForm в Silverlight 4 источника элемента проекта является:связывают DataForm

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> 

Мои автомобили таблица имеют отношения с прицепами столом. У меня есть combobox в моей форме данных, где я хочу показать все трейлеры, как я могу привязать combobox к другому запросу? И когда пользователь сохранит данные, как я могу получить идентификатор трейлера с отметкой?

благодаря

ответ

1

Прежде всего позвольте мне предварить это, говоря ComboBoxes вложенного в настоящее время форм данных ОЧЕНЬ багги от SL5. Но здесь вы идете, это с помощью Entity Framework:

Соответствующий класс:

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(); 
     } 
    } 
} 

В вашем XAML:

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

И, наконец, в вашем комбобоксе (или какой-либо контроль с ItemsSource):

ItemsSource = {Binding Path=VendorList, ElementName={StaticResource trailerListProvider}} 
Смежные вопросы