Используйте два разных объекта LINQ-To-Entity в качестве ItemSource для ListView в WPF - PullRequest
1 голос
/ 26 июня 2011

Я использую LINQ to Entites, где у меня есть два табличных объекта ( ReferenceCodes и Stock ) со связями.

Мне нужно объединить оба отдельных столбца в ListView следующим образом:

1009 * XAML * <ListView Name="myListView"> <ListView.View> <GridView> <GridViewColumn Header="Reference Code"/> <GridViewColumn Header="Description"/> </GridView> </ListView.View> </ListView> Используя оператор LINQ, я могу установить источник элементов каждой таблицы в отдельности, например: Код позади

Dim Context as New myEntity

myStock = From s In Context.Stocks.ToList
          Select s.Description

myListView.ItemSource = myStock

Но как мне установить каждый столбец как отдельный источник элементов для каждой таблицы? Я попытался сделать следующее заявление:

Dim Context as New myEntity

myStock = From s In Context.Stocks.ToList
          Join r In Context.ReferenceCodes.ToList
          Select r.ReferenceDescription, s.Description

Кажется, это работает, за исключением того, что он отображает только один столбец в этом формате:

{ ReferenceDescription = ABC1234 ; Description = My stock item description }

Вместо двух отдельных столбцов: один - список ссылочных кодов, а другой - список описаний акций.

Что я делаю не так?

1 Ответ

2 голосов
/ 26 июня 2011

Вам, вероятно, просто нужно установить DisplayMemberBindings столбцов, когда вы присоединились к анонимным объектам:

<ListView Name="myListView">
     <ListView.View>
         <GridView>
             <GridViewColumn Header="Reference Code"
                             DisplayMemberBinding="{Binding ReferenceDescription}"/>
             <GridViewColumn Header="Description"
                             DisplayMemberBinding="{Binding Description}"/>
         </GridView>
     </ListView.View>
</ListView>
myListView.ItemsSource = myStock
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...