【发布时间】:2015-12-29 10:23:04
【问题描述】:
我在 WPF 应用程序中有一个数据网格,其 itemssource 绑定到 ViewModel 中的 observablecollection。
<DataGrid
RenderOptions.ClearTypeHint="Enabled"
TextOptions.TextFormattingMode="Display"
SelectionUnit="FullRow"
IsSynchronizedWithCurrentItem="True"
IsReadOnly="True"
SelectionMode="Single"
MinWidth="300" ColumnWidth="*"
SelectionChanged="DataGrid_SelectionChanged"
ItemsSource="{Binding AdminEntity, NotifyOnTargetUpdated=True,IsAsync=True, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}"
SelectedIndex="{Binding selectedIndex}"
AutoGenerateColumns="False" Grid.Column="0" Grid.RowSpan="2">
<DataGrid.Columns>
<DataGridTextColumn Header="Nom et prénom" MinWidth="100" Binding="{Binding ADM_NOM_PRENOM}" SortMemberPath ="{Binding ADM_NOM_PRENOM}"></DataGridTextColumn>
<DataGridTextColumn Header="Mail" MinWidth="100" Binding="{Binding ADM_MAIL}"></DataGridTextColumn>
<DataGridTextColumn Header="Session" MinWidth="100" Binding="{Binding ADM_SESS}"></DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
private ObservableCollection<DB_ADMINISTRATEUR> _admins;
public ObservableCollection<DB_ADMINISTRATEUR> AdminEntity
{
get { return _admins; }
set { _admins = value; OnPropertyChanged("AdminEntity"); }
}
这很好用,但是当我对数据网格进行排序时,observablecollection 没有更新,也没有重新排序。 有什么帮助吗? 谢谢。
【问题讨论】:
-
每个显示集合的 WPF 元素都会创建一个 ICollectionView 并绑定到它。这是一个介于其间的对象,它不反映对基础集合的排序/过滤。 This 线程可以进一步帮助您
标签: c# wpf sorting datagrid observablecollection