VirtualizingStackPanel + MVVM + wielokrotny wybór

Zaimplementowałem wzór wyboru podobny do opisanego wten post przy użyciu ViewModel do przechowywania wartości IsSelected i przez powiązanieListViewItem.IsSelected do ViewModel IsSelected:

<ListView.ItemContainerStyle>
    <Style TargetType="{x:Type ListViewItem}">
        <Setter Property="IsSelected" Value="{Binding Mode=TwoWay, Path=IsSelected}"/>
    </Style>
</ListView.ItemContainerStyle>

Działa ogólnie, ale napotykam poważny problem. Używając aVirtualizingStackPanel&nbsp;jako panel w widoku listy, tylko widocznyListViewItem&nbsp;są tworzone. Jeśli użyję „Ctrl + A”, aby zaznaczyć wszystkie elementy lub używając kombinacji skrótów „Shift + Ctrl + End” na pierwszym przedmiocie, wszystkie elementy zostaną wybrane, ale dla niewidocznych elementów ViewModel nie otrzyma IsSelected ustaw na true. To logiczne, ponieważ jeśliListViewItem&nbsp;nie są tworzone, powiązanie nie działa.

Każdy doświadczył tego samego problemu i znalazł rozwiązanie (poza tym, że nie używałVirtualizingStackPanel)?