0

在我的小应用程序中有一个按钮,一旦被点击,列表视图中的第五个项目就会被选中。

问题是它超出了列表视图范围,我希望垂直滚动条向下滑动,以便我可以看到所选项目。

我怎样才能做到这一点 ?

在此处输入图像描述

XAML:

<StackPanel>
    <Button Click="Button_Click">Find number 5</Button>
    <ListView x:Name="lst" ScrollViewer.VerticalScrollBarVisibility="Visible" Height="50">
        <ListView.Items>
            <ListViewItem>1</ListViewItem>
            <ListViewItem>2</ListViewItem>
            <ListViewItem>3</ListViewItem>
            <ListViewItem>4</ListViewItem>
            <ListViewItem>5</ListViewItem>
            <ListViewItem>6</ListViewItem>
            <ListViewItem>7</ListViewItem>
        </ListView.Items>
    </ListView>
</StackPanel>

C#代码:

public partial class Window2 : Window
{
    public Window2()
    {
        InitializeComponent();
    }

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        ((ListViewItem)lst.Items[4]).IsSelected = true;
    }
}
4

1 回答 1

3

使用 ListView.ScrollIntoView 来实现你想要的:

lst.ScrollIntoView(lst.SelectedItem);
于 2011-06-23T09:48:16.430 回答