IはIsSelected値を格納するビューモデルを使用して、this postに記載したものと同様の選択パターンを実装し、ビューモデルIsSelectedにListViewItem.IsSelected
を結合させた:VirtualizingStackPanel + MVVM +複数選択
<ListView.ItemContainerStyle>
<Style TargetType="{x:Type ListViewItem}">
<Setter Property="IsSelected" Value="{Binding Mode=TwoWay, Path=IsSelected}"/>
</Style>
</ListView.ItemContainerStyle>
それが動作します一般的に、私は重大な問題に遭遇します。リストビューのパネルとしてVirtualizingStackPanel
を使用すると、表示されるのはListViewItem
のみになります。 「Ctrl + A」を使用してすべての項目を選択するか、最初の項目で「Shift + Ctrl + End」などのショートカットの組み合わせを使用すると、すべての項目が選択されますが、非表示項目の場合、ViewModelはIsSelected trueに設定します。これは論理的です。ListViewItem
が作成されていないと、バインディングは機能しません。
誰も同じ問題を経験し、解決策を見つけました(VirtualizingStackPanel
を使用していない場合を除きます)。
は、この問題のために、この完全なソリューションをお試しくださいhttp://stackoverflow.com/a/29545790 – nvkokorin