Entwickler-Ecke
WPF / Silverlight - ListView automatisch scrollen
Legolas - Fr 30.05.14 14:03
Titel: ListView automatisch scrollen
Hallo allerseits! :)
Ich versuche momentan ein ListView automatisch so zu scrollen, dass der markierte Eintrag exakt in der Mitte angezeigt wird.
Ich hab grad nur leider keinen Schimmer, wie ich das anstellen kann.
Mein Ansatz wäre, einfach einen anderen Eintrag zu markieren, und dann wieder zurrück zu springen, aber wirklich elegant ist das dann ja auch nicht... :)
Hat jemand eine Idee?
Danke schonmal!
Ralf Jansen - Fr 30.05.14 14:12
Tatsächlich ListView oder doch eher eine ListBox?
Wenn du nicht aus irgendeinem Grund zwingend einen ListView brauchst. Nimm es nicht sondern lieber eine ListBox.
Legolas - Fr 30.05.14 14:40
Nein, es muss leider ein ListView sein.
(Und mir ist gerade aufgefallen, dass nichtmal mein pseudo-Lösungsansatz funktioniert...)
Ralf Jansen - Fr 30.05.14 14:50
Dann erzähl mal welchen ListView du verwenden willst?
Dies Chimäre von Control funktioniert ja je nach Einstellung nicht nur ein wenig anders sondern verhält sich eher wie ein anderes Control.
Also welchen View, mit Gruppen oder ohne, Ownerdraw oder nicht ...
Legolas - Fr 30.05.14 14:55
Also mein Listview ist an eine Liste mit UserControls gebindet, und horizontal ausgerichtet - als eine Art Menü, in dem man die verschiedenen Seiten auswählen kann. Ich hab dann auf die Einträge des Listviews ein Template mit einem Grid drauf, dass sich ändert, wenn man es auswählt. (Ich hoffe, das beantwortet deine Frage? Wenn nicht, kannst du das nochmal für Noobs erklären? :D )
Ralf Jansen - Fr 30.05.14 14:59
Der Noob bin wohl eher ich :oops: Hab übersehen das es um WPF und nicht um Winforms geht.
Legolas - Fr 30.05.14 16:29
Oh... wow :D Danke!
Ich steig durch den Code zwar nicht durch, aber er funktioniert perfekt :)
Kann mir jemand kurz sagen, was das hier: "this ItemsControl itemsControl"
ist? Bzw. wenn es zu kompliziert ist, wonach ich googlen müsste?
Legolas - Mo 02.06.14 11:55
Ok... krasse Sache :)
Danke!
Ich hoffe, dass ich jetzt nicht anfange zu nerven, aber ein Problem hätte ich dabei aber noch... :?
Wie krieg ich das hin, dass das Scrollen
smooth abläuft?
Also, dass die Items nicht eins "springen", sondern sich gleichmäßig ins Bild hineinbewegen?
Mit ScrollViewer.CanContentScroll="False" funktioniert das zumindest schonmal mit der Scrollbar.
Was ich jetzt versuche ist, dass das auch dann funktioniert, wenn ich die "ScrollToCenterOfView"-Methode verwende...
Ich hab nur leider nicht den leisesten Schimmer, wie ich das hinbekommen könnte... :?
Danke schonmal!
Edit1: Ich hab jetzt das hier:
http://blogs.msdn.com/b/delay/archive/2009/08/04/scrolling-so-smooth-like-the-butter-on-a-muffin-how-to-animate-the-horizontal-verticaloffset-properties-of-a-scrollviewer.aspx
gefunden. Aber in mein ListView krieg ich das leider nicht so richtig eingebaut..
Edit2: Ich glaube, das ist nicht wirklich das, was ich suche, oder?
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!