2010-02-01 6 views
1

J'ai quelques questions concernant le défilement de ListView sans utiliser les contrôles ListView externes d'autres fournisseurs (versions gratuites ou payantes).Défilement horizontal et vertical ListView WinForms C#

  1. Comment faire 2 (ou plus) ListView liés ensemble de la manière que si je commence à défiler un ListView l'autre fait exactement la même chose? Est-il même possible de faire avec natif 3.5 ou 4.0 (quand il est publié) ListView?

  2. Lorsque vous essayez de faire défiler ListView à droite ou à gauche en utilisant les flèches de la barre de défilement, c'est très très lent. Pour un accès rapide, vous devez soit saisir le rouleau et le déplacer vous-même, soit faire des sauts avec celui-ci. Y a-t-il un moyen de faire bouger la gauche ou la droite plus vite? Un peu comme down/up? (bien que je suppose que la vitesse est la même que la longueur de défilement est proportionnellement plus longue).

En ce qui concerne,

MadBoy

+0

S'agit-il d'une liste de contrôle WPF ou Windows Forms? –

+0

C'est Windows Forms. – MadBoy

Répondre

1

Vous devrez utiliser P/Invoke pour faire ce travail. Vous trouverez un exemple de code au this thread. C'est pour un ListBox, cela fonctionnera aussi pour ListView. Utilisez pinvoke.net pour trouver la déclaration C# pour SendMessage.

Je ne suis pas au courant d'un correctif pour l'incrément de défilement. La fonction API SetScrollInfo ne permet pas de définir l'incrément de petit pas.

+0

Je vais essayer de l'utiliser. Jamais utilisé P/Invoke avant donc peut-être avoir de gros problèmes mais si c'est la seule façon que je n'ai pas le choix;) Merci. – MadBoy

Questions connexes