2011-06-23 8 views
0

私の小さなアプリでは、一度クリックされるボタンがあり、リストビューの5番目の項目が選択されています。垂直スクロールバーの位置をリスト内の選択した項目に応じて設定します

問題はリストビューの範囲外で、垂直スクロールバーが選択されたアイテムを見ることができるようにスライドすることです。

どうすればいいですか?

enter image description here

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; 
    } 
} 

答えて

2

使用ListView.ScrollIntoViewはあなたが望むものを達成するために:

lst.ScrollIntoView(lst.SelectedItem); 
+0

何もなく、華麗な!!ありがとう – Erez

関連する問題