2009-03-10 6 views
0

J'ai un contrôle FlowPanelControl et un contrôle utilisateur personnalisé (contient une étiquette et un bouton). J'ajoute des instances du contrôle d'utilisateur personnalisé à la collection de contrôles du panneau, qui s'écoulent l'une sous l'autre comme prévu; montrant la barre de défilement verticale bien aussi.L'écriture .NET WinForm dans le panneau provoque le saut du défilement

Lorsqu'un utilisateur clique sur un bouton dans l'une des commandes utilisateur ajoutées, il lance une minuterie et écrit le temps écoulé sur l'étiquette. Lorsque plusieurs instances du contrôle utilisateur sont présentes, il existe plusieurs boutons avec des étiquettes; tout ce qui peut être démarré et arrêté au besoin. Pensez à eux comme un mini chronomètre.

Mon problème est que l'écriture sur les étiquettes modifie l'emplacement de la barre de défilement du panneau de flux contenant. Si vous faites défiler vers le bas et que le dernier contrôle utilisateur à démarrer a été le premier dans la liste, il ramène la mise au point vers le haut.

J'ai essayé d'empêcher la mise au point sur les boutons mais je ne pense pas que ce soit le problème.

Est-ce que quelqu'un sait ce qui pourrait causer cela? Toute aide serait très appréciée, merci.

Répondre

0

J'ai résolu mon problème en changeant l'étiquette à une zone de texte. Le défilement ne clignote plus lorsqu'une valeur est écrite dans l'un des contrôles de la liste.

0

Vous pouvez utiliser TableLayoutPanel "pour éviter que la barre de défilement ne change de position

Questions connexes