2016-09-30 2 views
0

je le code XAML suivantes sur GridView:Comment trier un gridview XAML dans une application Windows 8.1?

<GridView x:Name="ivGridView" Margin="70,40,10,10" SelectionChanged="ivGridView_SelectionChanged"> 
    <GridView.ItemTemplate> 
     <DataTemplate> 
       <StackPanel Background="{Binding Color}" HorizontalAlignment="Stretch" VerticalAlignment="Bottom"> 
        <TextBlock Text="{Binding name}" Foreground="White" Margin="10,0,0,0" /> 
        <TextBlock Text="{Binding id}" Foreground="White" Margin="7,0,0,0" FontWeight="Light" /> 
       </StackPanel> 
      </StackPanel> 
     </DataTemplate> 
    </GridView.ItemTemplate> 

Comment puis-je mettre en œuvre le tri pour la GridView en fonction de la valeur Textblock qui se lie à un nom?

Répondre

3

Vous pouvez trier la source Items associée pour trier les éléments de la vue.

public ObservableCollection<Test> TestOC = new ObservableCollection<Test>(); 
public MainPage() 
{ 
    this.InitializeComponent(); 
    TestOC.Add(new Test() {name="BBB",id="1",Color=new SolidColorBrush(Colors.Red)}); 
    TestOC.Add(new Test() { name = "CCC", id="11", Color = new SolidColorBrush(Colors.Green) }); 
    TestOC.Add(new Test() { name = "AA", id="111", Color = new SolidColorBrush(Colors.Orange) }); 
    var SortResult = TestOC.OrderBy(a => a.name);   
    ivGridView.ItemsSource =SortResult; 
}