Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#-WPF反向绑定可观测集合(XAML)_Wpf_Xaml_Combobox_Observablecollection_Reverse - Fatal编程技术网

C#-WPF反向绑定可观测集合(XAML)

C#-WPF反向绑定可观测集合(XAML),wpf,xaml,combobox,observablecollection,reverse,Wpf,Xaml,Combobox,Observablecollection,Reverse,我有一个ObservableCollection,它作为ItemSource绑定到我的ComboBox。它是一个组合框,显示您所做的更改。我现在的问题是,最新的更改显示在列表的底部。 我试图在属性中反转它,但是当我返回ComboboxName.reverse()时,我得到了一个IEnumerable返回。我也不想第二次收集反向数据 另一种方法是在XAML中解决这个问题。有人知道我该怎么做吗 我在这里找到了这个答案,但我不明白如何实现它。 scm代表 xmlns:scm="clr-namespac

我有一个ObservableCollection,它作为ItemSource绑定到我的ComboBox。它是一个组合框,显示您所做的更改。我现在的问题是,最新的更改显示在列表的底部。 我试图在属性中反转它,但是当我返回
ComboboxName.reverse()
时,我得到了一个IEnumerable返回。我也不想第二次收集反向数据

另一种方法是在XAML中解决这个问题。有人知道我该怎么做吗

我在这里找到了这个答案,但我不明白如何实现它。

scm代表

xmlns:scm="clr-namespace:System.ComponentModel;assembly=WindowsBase"
有一个对我有效的解决方案。您必须使其适应您的情况:

<Window.Resources>
<CollectionViewSource x:Key="customerGroups" Source="{Binding Path=Customers}">
        <CollectionViewSource.GroupDescriptions>
            <PropertyGroupDescription PropertyName="IsCompany"></PropertyGroupDescription>
        </CollectionViewSource.GroupDescriptions>
        <CollectionViewSource.SortDescriptions>
            <scm:SortDescription PropertyName="IsCompany" Direction="Descending"/>
            <scm:SortDescription PropertyName="DisplayName" Direction="Ascending"/>
        </CollectionViewSource.SortDescriptions>
    </CollectionViewSource>
</Window.Resources>

然后将此资源引用为组合框的ItemsSource,并将内容绑定到所需的属性:

 <ComboBox ItemsSource="{Binding Source={StaticResource customerGroups}}">
        <DataTemplate>
            <TextBlock Text="{Binding Path= FirstName}"></TextBlock>
        </DataTemplate>
    </ComboBox>


链接的答案有什么问题?什么不起作用?当我将ObservableCollection绑定而不是
{binding Path=DocProps}
放入时,组合框中不会显示任何内容。我现在也不知道这个
scm:
代表什么。