2017-04-17 3 views
0

관찰 가능한 컬렉션을 정렬하는 방법을 찾는 데 약간의 문제가 있습니다. 현재 관찰 가능한 컬렉션을 보여주는 listview를 실시간으로 변경하기 위해 눌려진 버튼의 이벤트를 사용하여이 프로세스를 테스트하려고합니다. "Sort"명령을 사용할 수 없다는 것을 이해하지만 이것을 사용하여 달성 할 수 있습니다. "OrderBy"명령. 내 코드는 현재 다음과 같습니다 :UWP Visual Studio 2017 ObservableCollection 정렬

public sealed partial class MainPage : Page 
{ 

    ObservableCollection<DataType> collection = new ObservableCollection<DataType>(); 

    public MainPage() 
    { 
     this.InitializeComponent(); 

     setupCollection(); 
    } 

    public void setupCollection() 
    { 
     collection.Add(new DataType { times = "08:30" }); 
     collection.Add(new DataType { times = "00:30" }); 
     collection.Add(new DataType { times = "12:30" }); 
     collection.Add(new DataType { times = "23:30" }); 
     collection.Add(new DataType { times = "18:30" }); 
     collection.Add(new DataType { times = "15:30" }); 
     collection.Add(new DataType { times = "06:30" }); 
     collection.Add(new DataType { times = "05:30" }); 
     collection.Add(new DataType { times = "14:00" }); 
     collection.Add(new DataType { times = "12:00" }); 
     listview.ItemsSource = collection; 
    } 

    public class DataType 
    { 
     public string times { get; set; } 
    } 

    private void Button_Tapped(object sender, TappedRoutedEventArgs e) 
    { 
     collection = new ObservableCollection<DataType>(from i in DataType orderby i.times select i); 
     //collection.OrderBy(i.DataType > i.times); 
    } 
} 

누구든지 내 코드를 수정하여 항목을 주문할 수 있습니까?

+0

어떤 식으로 OrderBy를 사용할 수 없습니까? –

+0

WPF에서는 'CollectionViewSource'를 사용하여 쉽게 수행 할 수 있습니다. UWP에서 유사한 작업을 수행하는 방법에 대한 아이디어는 https://stackoverflow.com/questions/34915276/uwp-observablecollection-sorting-and-grouping을 참조하십시오. –

답변

3

이 문제는 다음과 같습니다

collection = new ObservableCollection<DataType>(
    from i in collection orderby i.times select i); 

: 당신은 클래스 데이터 유형에서 검색, 당신은 당신이 값을 순서대로 넣어 수 있도록 컬렉션 검색해야 ... 여기에 솔루션입니다 그것은 나를 위해 일했다. 당신을 너무 바랍니다.