¿Existe una forma única de XAML para ordenar automáticamente los elementos encuadernados (lista de objetos de ViewModel) ItemsControl según una de las propiedades de los elementos? ItemsControl es parte de un DataTemplate. Pensé que CollectionViewSource haría el truco, pero ¿cómo puedo unir CollectionViewSource a ItemsControl? El código dispays follwoing nada:ordenando un ItemsControl encuadernado en una plantilla de datos (solo XAML)
<--xmlns:scm="clr-namespace:System.ComponentModel;assembly=WindowsBase"-->
<DataTemplate DataType="{x:Type vm:Company}">
<DataTemplate.Resources>
<CollectionViewSource x:Key="viewSource" Source="{Binding Employees}">
<CollectionViewSource.SortDescriptions>
<scm:SortDescription PropertyName="ID" />
</CollectionViewSource.SortDescriptions>
</CollectionViewSource>
</DataTemplate.Resources>
<Viewbox>
<ItemsControl ItemsSource="{Binding Source={StaticResource viewSource}}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
</Viewbox>
</DataTemplate>
¿Algo relacionado con "Employess" se escribe mal? De lo contrario, se ve bien para mí. – Crispy
No, no es que el problema aquí parece ser (tal vez) que el enlace de ViewModel ({x: Type vm: Company}) no se conoce o no se evalúa dentro del alcance del recurso. Los empleados son propiedad de la Compañía por cierto. – bitbonk