2010-04-10 4 views
2

J'essaie d'ajouter des barres de défilement verticales et horizontales à mon UserControl avec les propriétés HorizontalScroll et VerticalScroll, mais j'ai des problèmes extrêmes. Mon problème se pose lorsque je fais glisser ou manipule la boîte de défilement sur la barre. Quand je le laisse partir, il revient simplement à la position de départ!Ajout de barres de défilement à UserControl

Je connais la propriété AutoScroll, mais je ne veux pas l'utiliser car je veux pouvoir contrôler tous les aspects de mes barres de défilement, et je ne veux pas que cela se fasse automatiquement. En outre, selon la documentation, AutoScroll est pour "permettre à l'utilisateur de faire défiler les contrôles placés en dehors de ses limites visibles" ce qui n'est pas ce que je veux. Je veux juste des barres de défilement.

... et je suppose que je pourrais ajouter VScrollBar et HScrollBar au contrôle, mais pourquoi devrais-je le faire lorsque la fonctionnalité de défilement existe déjà? On dirait un gâchis pour moi.

Répondre

11

Définissez la propriété AutoScrollMinSize.

Si vous avez implémenté le remplacement OnPaint(), vous devez utiliser la propriété AutoScrollPosition pour définir les arguments pour e.Graphics.TranslateTransform().

Questions connexes