如何在Databound Windows Phone应用程序中对项目进行排序?

时间:2011-06-08 02:43:44

标签: sorting windows-phone-7

从库存数据绑定应用程序开始,我有三个字符串:LineOne,LineTwo和LineThree。现在想象我有IntThree而不是LineThree。

将数据添加到项目中,如下所示:

this.Items.Add(new ItemViewModel() { LineOne = "runtime one", LineTwo = "Maecenas praesent accumsan bibendum", IntThree = 5 });
this.Items.Add(new ItemViewModel() { LineOne = "runtime two", LineTwo = "Dictumst eleifend facilisi faucibus", IntThree = 8 });

等等。

在MainPage中我有

<StackPanel Margin="0,0,0,17" Width="432">
       <TextBlock Text="{Binding LineOne}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}"/>
       <TextBlock Text="{Binding LineTwo}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
       <TextBlock Text="{Binding IntTwo}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
</StackPanel>

列表框中围绕StackPanel的项目的显示顺序取决于项目添加到“项目”的顺序。我计划有一个应用栏菜单,上面写着“按LineOne排序”,“按IntThree排序”等。有人知道是否可以对此列表进行排序,然后刷新UI。我该怎么做呢?我知道ObservableCollections可以在添加和删除时更新UI,但这也适用于排序。我无法明确导航到同一页面。

感谢您的光临。