Extended selection mode, virtualization and IsSelected binding
It seems in extended selection mode IsSelected binding is buggy. Looks like only last item from selection which become out of scope is handled properly. Demonstration: Items 0 , 1 , 2 and 98 , 97 , 96 are selected with Control . When selecting 94 (without Control !) selection counter should be 1 , but you see 3 instead. Scrolling up reveals what only one (last) item of selection out of scope was unselected. Below is mcve: xaml: <ListBox ItemsSource="{Binding Items}" SelectionMode="Extended" SelectionChanged="ListBox_SelectionChanged"> <ListBox.ItemTemplate> <DataTemplate> <TextBlock Text="