WPF Datagrid不会更新ItemsSource Changed上的UI

时间:2018-01-22 08:34:12

标签: c# wpf mvvm observablecollection wpfdatagrid

我将我的observablecollection绑定到具有SortDescriptions的CollectionViewSource。在初始加载时,一切都很好,并且可以进行分类。

我有一个重置按钮,我试图通过重新获取observablecollection并绑定到ItemSource来刷新网格中的更改。一旦我重新绑定,排序就不起作用了。

以下是我的collectionviewsource,

<CollectionViewSource
            x:Key="BuildLineSource"
            IsLiveSortingRequested="True"
            Source="{Binding BuildLineCollection,
                             UpdateSourceTrigger=PropertyChanged}">
            <CollectionViewSource.GroupDescriptions>
                <PropertyGroupDescription PropertyName="BuildLineCategory.Category" />
            </CollectionViewSource.GroupDescriptions>
            <CollectionViewSource.LiveSortingProperties>
                <system:String>ExecutePriority</system:String>
            </CollectionViewSource.LiveSortingProperties>
            <CollectionViewSource.SortDescriptions>
                <componentModel:SortDescription PropertyName="ExecutePriority" />
            </CollectionViewSource.SortDescriptions>
        </CollectionViewSource>

下面是我在构造函数上调用的代码,以及重置单击,

private void GetBuildLines()
    {
        BuildLineCollection?.Clear();
        BuildLineCollection = _buildLineData.GetBuildLines();           
        ((INotifyPropertyChanged)BuildLineCollection).PropertyChanged +=
            (x, y) => BuildLineUpdated();
    }

0 个答案:

没有答案