我有一个视图模型的数据模板,其中项目控件绑定到 CollectionViewSource(以启用 xaml 中的排序)。
<DataTemplate x:Key="equipmentDataTemplate">
<Viewbox>
<Viewbox.Resources>
<CollectionViewSource x:Key="viewSource" Source="{Binding Modules}">
<CollectionViewSource.SortDescriptions>
<scm:SortDescription PropertyName="ID" Direction="Ascending"/>
</CollectionViewSource.SortDescriptions>
</CollectionViewSource>
</Viewbox.Resources>
<ItemsControl ItemsSource="{Binding Source={StaticResource viewSource}}"
Height="{DynamicResource equipmentHeight}"
ItemTemplate="{StaticResource moduleDataTemplate}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
</Viewbox>
</DataTemplate>
我还设置了 UserControl,所有这些都被定义为提供设计时数据
d:DataContext="{x:Static vm:DesignTimeHelper.Equipment}">
这基本上是一个静态属性,它为我提供了一个具有 ModuleViewModel (Equipment.Modules) 列表的 EquipmentViewModel。现在只要我绑定到 CollectionViewSource 设计时数据就不会出现在混合 3 中。当我直接绑定到 ViewModel 集合时
<ItemsControl ItemsSource="{Binding Modules}"
我可以看到设计时数据。知道我能做什么吗?