如何正确实现SortedDictionary

问题描述

在WPF应用程序中,我在主窗口中使用DataGrid。它显示的数据来自SortedDictionary<int,Individual>,其中Individual是包含一个人的名字和其他事实的类。具体来说,数据来自SortedDictionary的{​​{1}}属性

显然,Values没有实现SortedDictionary界面,因此在显示INotifyCollectionChanged的原始集合之后,如果我ValuesAdd条目进入字典后,UI不会收到通知,并随后出现问题。

在网络上进行了很多研究之后,我对如何解决此问题并没有得到一个体面的想法,以便可以正确通知用户界面。我看到的帖子都没有涉及Remove

我使用的SortedDictionary的主要功能SortedDictionaryAddRemove

有人可以建议我还是为我提供一个有关如何真正做到这一点的例子?

在主窗口的XAML中,我有

Item[TKey]

在具有<DataGrid x:Name="dgPeople" Margin="23" SelectionChanged="dgSelectionChanged" SelectionMode="Single" SelectionUnit="FullRow" AutoGenerateColumns="False" IsReadOnly="True" IsEnabled="False" TextSearch.TextPath="paternalSurname" MouseDoubleClick="dgPeoplePersondoubleclicked" Grid.Row="1" MinWidth="1125" MinHeight="435" SizeChanged="dgSizeChanged" CanUserReorderColumns="False" CanUserResizeColumns="False" CanUserSortColumns="False" CanUserAddRows="False" CanUserDeleteRows="False" CanUserResizeRows="False" AlternationCount="2" AlternatingRowBackground="PeachPuff" IsTextSearchEnabled="True" IsTextSearchCaseSensitive="False"> <DataGrid.Columns> <DataGridTextColumn x:Name="dgtcPaternalSurname" Header="Paternal Surname" Width="150" Binding="{Binding paternalSurname}" /> <DataGridTextColumn x:Name="dgtcMaternalSurname" Header="Maternal Surname" Width="150" Binding="{Binding maternalSurname}" /> <DataGridTextColumn x:Name="dgtcNames" Header="Names" Width="360" Binding="{Binding names}" /> <DataGridTextColumn x:Name="dgtcState" Header="S" Width="17" Binding="{Binding state}" MinWidth="17" MaxWidth="17"/> <DataGridTextColumn x:Name="dgtcBirthDate" Header="Birth Date" Width="120" Binding="{Binding birthDate}" MaxWidth="120" MinWidth="120" /> <DataGridTextColumn x:Name="dgtcBirthPlace" Header="Birth Place" Width="320" Binding="{Binding birthPlace}" MaxWidth="320" MinWidth="320" /> </DataGrid.Columns> 的窗口的构造函数中,我有

DataGrid

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)