【发布时间】:2014-10-07 20:37:36
【问题描述】:
我有一个 ListView:
<ListView ItemsSource="{Binding}" x:Name="LvLevels"
Margin="10 60 0 0"
SelectionChanged="LvLevels_SelectionChanged">
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"></Setter>
</Style>
</ListView.ItemContainerStyle>
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel>
<Border BorderBrush="White" BorderThickness="6">
<TextBlock Text="{Binding}"
FontSize="56" FontWeight="ExtraBold"
Margin="10"
HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
TextAlignment="Center">
</TextBlock>
</Border>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
我需要选择特定的项目并将 ListView 滚动到它。我可以选择项目:
LvLevels.SelectedItem = CurrentLevel;
但我无法将 ListView 滚动到该项目。这是我的代码:
LvLevels.ScrollIntoView(LvLevels.SelectedItem);
我已经创建了演示示例here。
这是一个code,它设置了DataContext并设置了Selected Item:
List<int> data = new List<int>();
for (int i = 0; i <= 20; i++)
data.Add(i);
LvLevels.DataContext = data;
LvLevels.SelectedItem = LvLevels.Items[14];
LvLevels.ScrollIntoView(LvLevels.SelectedItem);
【问题讨论】:
标签: wpf xaml windows-8.1