私は自分のモデル (クラス X) にブール型プロパティを持っています:IsSelectedは、次のように a にリンクされてWPF DataGridいます:
<DataGrid  SelectedIndex="{Binding SelectedXIndex,Mode=TwoWay}" 
           DataContext="{Binding MyViewModel}" 
           ItemsSource="{Binding ListX}" AutoGenerateColumns="False">
     <DataGrid.RowStyle>
         <Style TargetType="{x:Type DataGridRow}">
             <Setter Property="IsSelected" 
                     Value="{Binding IsSelected, Mode=TwoWay, 
                             UpdateSourceTrigger=PropertyChanged}"/>
         </Style>
     </DataGrid.RowStyle>
</DataGrid>
ListX- ObservableCollection
IsSelecte- NotifyPropertyChange の呼び出し
それはうまくいきます。
しかし、スクロールして表示する必要がある行がたくさんある場合、次の機能を実行する「すべて選択」ボタンを押すと、すべてではなく一部の行のみが選択されます。リストの IsSelected はtrue )
public void SelectAll()
{
    ListX.All(c => c.IsSelected = true);
}
なぜこれが起こっているのか理解できませんか?