为什么将此DataGrid的ItemsSource绑定到匿名类型的集合不起作用?

时间:2015-01-07 18:13:03

标签: wpf linq datagrid anonymous-types itemssource

我有一组匿名类型,我希望将其绑定到ItemsSource的{​​{1}}属性。我确认该集合中有项目,但我的DataGrid为空。

我创建了一个Debug转换器,它没有在那里击中我的断点,因此在此之前看起来有些事情发生了变化。

我检查了“输出”窗口,但没有看到绑定错误。

我的匿名类型看起来像这样:

DataGrid

在此之后,我检查了汽车的内容,它确实有数据。

我的Xaml看起来像这样:

var cars = from c in something.Cars
           select new
           {
               Passengers = from p in c.Passengers
                            select new
                            {
                                 Name = p.Name
                            }
               Type = s.Type
            };
Cars = cars;

Type上的<TabControl ItemsSource="{Binding Cars}"> <TabControl.ItemTemplate> <DataTemplate> <TextBlock Text="{Binding Type}" /> </DataTemplate> </TabControl.ItemTemplate> <TabControl.ContentTemplate> <DataTemplate> <DataGrid ItemsSource="{Binding Passengers}" > <!-- column definitions here --> </DataGrid> </DataTemplate> </TabControl.ContentTemplate> </TabControl> 绑定会显示正确的数据。

我错过了什么?

更新:

linq结果的类型是TextBlock。我有另一个System.Linq.Enumerable.WhereSelectListIterator,其中绑定到匿名类型工作,但我注意到DataGrid类型的linq结果。

0 个答案:

没有答案