2012-11-07 12 views
0

我有一个Silverlight数据网格,其中绑定的列设置为模型上的字符串属性。这些字符串是字母数字的,所以我创建了一个自定义的IComparer来对它们进行适当的排序。我的问题是,如何强制网格使用此自定义比较器排列此列时?如何为可用于Silverlight DataGrid列排序的模型上的特定属性指定IComparer

我的一个想法或许有一些属性,可对我绑定到模型的字符串属性被应用,这将显式地指定用另一个字符串比较该值时使用的比较器?

回答

0

如果你将你的网格绑定到你的ViewModel,那么你在绑定到你的视图的属性中使用ICompare。

+0

贝娄你会发现一个更好的属性绑定到你的ListItem源的例子。 –

+0

贝娄...哪里? – j0k

+0

你应该考虑合并你的两个答案(可能将他们作为替代品)。 – Jeroen

0

像财产bellow,但在你的情况下,你应该返回使用你的ICompare。

private ObservableCollection<ListOfMyClassType> myGridItemSource; 
public ObservableCollection<ListOfMyClassType> MyGridItemSource 
{ 
     get { return myGridItemSource; } 
     set { myGridItemSource = value; OnPropertyChanged("MyGridItemSource");} 
} 
相关问题