2011-07-11 3 views
1

J'ai une liste avec plus de 20 articles. Comment je peux défiler jusqu'au fond de celui-ci? J'ai essayé la méthode ScrollIntoView, mais sans succès:Faire défiler vers le bas de la liste wp7

listmy.SelectedIndex = listmy.Items.Count;// listmy.Items.Count - 1; 
      listmy.ScrollIntoView(listmy.SelectedIndex); 
      listmy.UpdateLayout(); 

Répondre

4

La méthode ScrollIntoView attend un objet (l'élément pour faire défiler), mais vous passez dans l'index numérique de l'élément sélectionné. Cela fonctionne:

void MainPage_Loaded(object sender, RoutedEventArgs e) 
{ 
    listmy.SelectedIndex = listmy.Items.Count - 1; 
    listmy.ScrollIntoView(listmy.SelectedItem); 
} 
+0

(Comme suggéré par Ernest) avait également appeler listmy.UpdateLayout(); – Thiru

3

Appel UpdateLayout avant ScrollIntoView

var item = listmy.Items[listmy.Items.Count - 1]; 
listmy.UpdateLayout(); 
listmy.ScrollIntoView(item); 
listmy.UpdateLayout(); 
+0

Cette méthode ne fonctionne pas correctement. Image vous utilisez ObservableCollectioin comme source d'élément. Cela fonctionne bien jusqu'à ce que vous entrez la même chaîne que précédente. Dans ce cas, vous serez positionné sur votre première valeur de chaîne ... – alerya

Questions connexes