WPF ListView选定的项目可见
问题描述:
我有一个ListView
其ItemsSource
绑定与ObservableCollection
。WPF ListView选定的项目可见
<ListView
Name="ShapesList"
ItemsSource="{Binding ChartViewModel.ShapeList}"
Grid.Row="1"
Margin="10,0,10,5"
SelectionMode="Multiple">
<ListView.View>
<GridView>
<GridView.Columns>
<GridViewColumn>
<GridViewColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListViewItem}}, Path=DataContext.IsChecked, Mode=TwoWay}" Content="{Binding Path=Name, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListViewItem}}}" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="PdC" DisplayMemberBinding="{Binding Name}" />
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
该窗口有一个负责逻辑的模型:它计算ListView
的检查项目。我需要的是当窗口打开时,ListView
的选中项目可见。
我试着用
ShapesList.ScrollIntoView(ChartViewModel.GetIndexOfSelectedROI());
,但它不能正常工作,即使该方法返回正确的索引。
在此先感谢您的帮助!
这是真的! ShapesList.SelectedIndex = ChartViewModel.GetIndexOfSelectedROI(); ShapesList.ScrollIntoView(ShapesList.SelectedItem); 解决了这个问题。谢谢! –