С новой платформой .NET 4.8 я обнаружил проблемы в сетке данных WPF с полями со списком при прокрутке вверх и вниз:
Если я установилEnableRowVirtualization для false в сетке данных, проблема не может быть обнаружена.
В предыдущих версиях фреймворка (4.7 или более ранних) у меня не было этой проблемы, либо с EnableRowVirtualization, настроенным на true или false.
Почему?
<DataGrid Focusable="True" Grid.Column="0" Grid.Row="0" HeadersVisibility="Column" RowHeaderWidth="0" AutoGenerateColumns="False" ItemsSource="{Binding People}" CanUserAddRows="False" CanUserDeleteRows="False" SelectionUnit="FullRow" IsTabStop="True">
<DataGrid.Columns>
<DataGridTextColumn Header="Name" IsReadOnly="True" MinWidth="50" Binding="{Binding Name, ValidatesOnDataErrors=True, NotifyOnValidationError=True}"/>
<DataGridTemplateColumn Header="Age Old">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox ItemsSource="{Binding Ages, TargetNullValue=''}" SelectedValue="{Binding Age, ValidatesOnDataErrors=True, NotifyOnValidationError=True, UpdateSourceTrigger=LostFocus, TargetNullValue=''}">
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>