我遇到了一些TextBox,它们与ListBox中选择的当前元素同步。例如。我有以下TextBoxes:
<TextBox Style="{StaticResource IdTextboxStyle}" Grid.Row="2" Grid.Column="1" Text="{Binding Path=ID, UpdateSourceTrigger=PropertyChanged}" />
<TextBox Style="{StaticResource TextboxStyle}" Grid.Row="3" Grid.Column="1" Text="{Binding Path=CodeName, UpdateSourceTrigger=PropertyChanged}" />
我还有以下ListBox:
<ListBox Name="ListOfAgentsBox" Margin="20, 5, 5, 5" Grid.Row="2" Grid.Column="2" Grid.RowSpan="4"
IsSynchronizedWithCurrentItem="True" ItemsSource="{Binding Source={StaticResource AgentsViewSource}}"
SelectedIndex="{Binding Path=CurrentIndex, UpdateSourceTrigger=PropertyChanged}">
其中包含名为Agents的集合中的当前元素,这是Agent元素的集合。
我的问题是,在介绍以下CollectionViewSource:
之前<CollectionViewSource x:Key="AgentsViewSource"
Source="{StaticResource Agents}">
<CollectionViewSource.SortDescriptions>
<componentModel:SortDescription PropertyName="ID" />
</CollectionViewSource.SortDescriptions>
</CollectionViewSource>
一切似乎都运行良好 - 我可以单击ListBox中的不同元素,并在TextBox中编辑它们。但是,TextBoxes和ListBox不再同步,我不明白为什么。