2016-11-16 10 views

答えて

0

新しい観測可能なコレクションを再作成するのはどうですか?多くのソリューションが同時にあるとない時間の後

Classes = new ObservableCollection<string>(Classes.OrderBy(x => x.name)); 
0

こんにちは、しかし、ここで私はあなたにすべてのソリューション与えた:

は、以下のコードを試してみてください 1)あなたのObservableCollectionのgetterとsetterを

private TheCollection yourcollection; 
    public TheCollection Yourcollection{ 
     get{ 
      yourcollection.CollectionChanged -= Your_CollectionChanged; 

      // use sort-Extension to sort pointprofil 
      yourcollection.Sort(); 
      // read CollectionChange-Event 
      yourcollection.CollectionChanged += Your_CollectionChanged; 
      return yourCollection; 
     } 
} 

そして、あなたのコレクション(ソートするための拡張を取得するのObservableCollectionからではなく、同時に継承する必要がある)

彼女は、 E私達は行く:

static class Extensions 

    public static void Sort<T>(this ObservableCollection<T> collection) where T : IComparable 
    { 
     List<T> sorted = collection.OrderBy(x => x).ToList(); 
     for (int i = 0; i < sorted.Count(); i++) 
      collection.Move(collection.IndexOf(sorted[i]), i); 
    } 
} 

public class YourCollections : ObservableCollection<YourPoints>, ICustomTypeDescriptor, INotifyPropertyChanged 
{ 

} 

とYourPointsはIComparableを

から継承する必要があり