événement mouseWheel ne se déclenche pas quand je me sers de tout contrôle (ListBox, panneau, TextBox) avec des barres de défilement.événement MouseWheel ne se déclenche pas lorsque vous utilisez un contrôle avec scrolbars (en C# Windows Forms)
Pour reproduire le problème:
public class Form1 : Form
{
private readonly Button button1;
private readonly TextBox textBox1;
private void button1_MouseWheel(object sender, MouseEventArgs e)
{
ToString(); // doesn't fire when uncomment lines below
}
public Form1()
{
button1 = new Button();
textBox1 = new TextBox();
SuspendLayout();
button1.Location = new System.Drawing.Point(80, 105);
button1.Size = new System.Drawing.Size(75, 23);
button1.MouseWheel += button1_MouseWheel;
button1.Click += button1_Click;
textBox1.Location = new System.Drawing.Point(338, 105);
//textBox1.Multiline = true; // uncomment this
//textBox1.ScrollBars = ScrollBars.Vertical; // uncomment this
textBox1.Size = new System.Drawing.Size(100, 92);
ClientSize = new System.Drawing.Size(604, 257);
Controls.Add(textBox1);
Controls.Add(button1);
ResumeLayout(false);
PerformLayout();
}
// Clicking the button sets Focus, but even I do it explicit Focus() or Select()
// still doesn't work
private void button1_Click(object sender, System.EventArgs e)
{
button1.Focus();
button1.Select();
}
}
Peut-être que le problème est dans la souris, utiliser "Lenovo USB Optical Wheel Mouse" (configuration par défaut fonction "Bouton Whell" "Quick/AutoScroll") – halorty
J'utilise: Windows Vista Buisness, Net Framework 3.5 SP1 , Visual Studio 2008 Standard Edition (tous les correctifs officiels). Build Debug: Target Framework = .Net Framework 3.5, Type de sortie = Windows Application – halorty
Configuration de la souris: Panneau de configuration/Souris/Roue/Poussoir-> Activer le défilement universel; Panneau de configuration/Souris/Roue/Bouton de commande-> Rapide/AutoScrol; Panneau de configuration/Souris/Roue/Vitesse de défilement-> Défilement = 10 ligne (s) par note; – halorty