2

我有查看源

<view:ValidationBaseView x:Class="test.View.test"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:res="clr-namespace:test.Resources"
    xmlns:local="clr-namespace:test"
    xmlns:view="clr-namespace:test.View"
    xmlns:viewModel="clr-namespace:test.ViewModel"
    Height="Auto" Width="Auto">

    <UserControl.DataContext>
        <viewModel:testviewmodelx:Name="testview"/>
    </UserControl.DataContext>

然后我有我的 UI 元素,我将 Combobox 与 ObservableCollection 绑定。但我知道我需要在组合中排序值。

<ComboBox Grid.Column="0" 
          Grid.Row="3" 
          x:Name="combo1" 
          Margin ="0" 
          ItemsSource="{Binding Path=test}" 
          DisplayMemberPath="testpath"/>
4

1 回答 1

1

使用ICollectionView. 像这样的东西:

// this is your existing collection of items
var items = ...;

var cv = new ListCollectionView(items);

// this will sort by the Foo property of each item
cv.SortDescriptions.Add(new SortDescription("Foo"));

在您的视图中,绑定到集合视图而不是原始项目。

于 2012-04-17T16:11:17.180 回答