[英]WPF order listbox items
如何訂購從模型綁定到列表框的項目。
我定義的模型是:
public ObservableCollection<NotificationItem> Classes:
我需要按分配給每個通知項目的ID進行訂購。
目前我有定義:
<ListBox ItemsSource="{Binding Classes, Source={StaticResource model}}"
ScrollViewer.VerticalScrollBarVisibility="Visible"
DataContext="{Binding}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Label Content="{Binding Name}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
我在哪里參考模型:
<Model:ClassModel x:Key="model" />
更新:
模型的初始化是由
try
{
this.notifierModel = this.Resources["model"] as ClassModel;
this.classController.Initialize(this.notifierModel);
}
catch
{
// todo: handle exception
}
您可以直接在模型(數據上下文)上訂購集合,也可以創建自定義CollectionViewSource並將ListBox綁定到該集合 。
在哪里設置Classes
您需要具備:
Classes = new ObservableCollection(results.OrderBy(i => i.Id));
而不只是:
Classes = new ObservableCollection(results);
假設results
是查詢返回的數據列表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.