|
我的网页是一个实体框架实体。这些绑定到WPF TreeView。我想排序Sort属性上TreeView中显示的所有网页。
码
EDMX
其“下属”属性返回零个或多个网页的集合。
XAML
C#
TreeViewWebpages.ItemsSource = from Webpage root in db.Webpages.Include(\"Subordinates\")
where root.Dominant == null
select root;
结果
网页在TreeView中是无序的。
问题
如何更改此顺序以排序Sort属性中TreeView中显示的所有网页?
更新资料
这个ValueConverter似乎可以正常工作(谢谢@KP Adrian和@IVerzin)。有没有更好的办法?
XAML
ItemsSource=\"{Binding Path=Subordinates, Converter={local:SortConverter}}\"
C#
[ValueConversion(typeof(EntityCollection), typeof(EntityCollection))]
public class SortConverter : MarkupExtension, IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
return ((EntityCollection)value).OrderBy(o => o.Sort);
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return null;
}
public override object ProvideValue(IServiceProvider serviceProvider)
{
return this;
}
}