Есть такая проблема, после удаления элемента выделяю программно следующий если есть, но, как только я нажимаю стрелку для переключения выделения дальше, оно сбрасывается и выделяется самый первый элемент. Мне нужно чтобы я мог с выбранного элемента шагать стрелками вперед назад.
Например: Удаляю пятый элемент, затем выделяю следующий т.е. получается пятый, все выделилось, нажимаю стрелку вниз и вместо того чтобы выделился шестой выделяется 1, в этом и заключается проблема.
XAML элемента:
<ListBox x:Name="listBox_CollectionItems" Grid.Column="2" Margin="5,0,0,0" SelectionMode="Extended" HorizontalContentAlignment="Stretch" ScrollViewer.HorizontalScrollBarVisibility="Disabled" SelectionChanged="ListBox_CollectionItems_SelectionChanged" IsSynchronizedWithCurrentItem="True">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid MaxHeight="98">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="167" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Image Grid.Column="0" Grid.RowSpan="2" HorizontalAlignment="Center" Height="94" Margin="0,2,0,2" VerticalAlignment="Top" Stretch="Uniform" Source="{Binding Path=Preview}"/>
<StackPanel Margin="5,2,0,2" Grid.Column="1">
<TextBlock TextWrapping="Wrap" VerticalAlignment="Top" Text="{Binding Path=Path}"/>
<TextBlock TextWrapping="Wrap" VerticalAlignment="Top" Foreground="Gray" Text="{Binding Path=Description}"/>
</StackPanel>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Добавление элементов происходит в коллекцию listBox_CollectionItems.Items, через цикл.
Удаляю элемент так:
int currentCollectionItemIndex = listBox_CollectionItems.SelectedIndex;
listBox_CollectionItems.Items.RemoveAt(currentCollectionItemIndex);