2010-06-03 2 views
1

J'ai un ComboBox. Il est essentiel que l'utilisateur ne puisse pas faire défiler par accident et modifier la valeur sélectionnée. Comment puis-je empêcher la ComboBox de changer la valeur et le texte lorsque l'utilisation défile?Comment empêcher le défilement de la ComboBox? C#

Merci.

Visual Studio 2008

+1

Et qui boîte à outils graphique utilisez-vous? –

+1

WinForms? WPF? ASP.Net? Silverlight? – SLaks

+0

Visual Studio 2008. Application Windows Form. C# – Chris

Répondre

8
combobox.MouseWheel += new MouseEventHandler(combobox_MouseWheel); 

void combobox_MouseWheel(object sender, MouseEventArgs e) 
{ 
    ((HandledMouseEventArgs)e).Handled = true; 
} 
+0

Je crois que cela ne fonctionnera pas. Je ne suis pas sûr, cependant; essayez-le. – SLaks

+0

Je l'ai utilisé plusieurs fois pour empêcher le "défilement accidentel" de jouer avec l'entrée d'un utilisateur. – JohnForDummies

+0

Ensuite, je le reprends. – SLaks

1

Si vous ne voulez pas l'utilisateur de jouer avec le contrôle, désactivez-le. À un autre niveau cependant, s'il est critique que l'utilisateur n'utilise PAS le contrôle ... peut-être que vous devriez changer le contrôle.

ComboBox.Enabled = false;