Zunächst ist das Mousewheel-Ereignis nicht in Visual Studio 2008 Ereignisfenster aufgeführt, die sehr ärgerlich ist.Kann MouseWheel-Ereignis in C# Windows Forms nicht auslösen
fand ich das richtige Format Online aber, und schrieb dies in meinen Code:
private void Form1_MouseWheel(object sender, MouseEventArgs e)
{
Debug.WriteLine("Foo");
}
... von denen ich erhalte keine Antwort, wenn das Mausrad gedreht wird.
Ich mache das in meinem Hauptbereich Klasse Code, und der Designer enthält nur das eine Formular/Fenster/was auch immer, so dass die Maus nicht den Fokus verliert.
namespace BlahBlah
{
public partial class Form1 : Form
{
Und dagegen habe ich diese Methode direkt über das Mausrad ein und es funktioniert gut:
private void Form1_MouseClick(object sender, MouseEventArgs e)
{
Debug.WriteLine("Foo");
}
Wenn ich raten müsste, ich denke ich nicht den Code korrekt verknüpfen bin zu dem Formular (aka: all die Dinge, die Visual Studio für mich tun würde, wenn ich dieses Ereignis über das Ereignisfenster des Designers hinzufügen würde). Aber ich könnte mich irren oder nur einen dummen Fehler machen.
Können Sie mir helfen, IRGENDEINE Antwort zu erhalten, wenn das Mausrad gedreht wird? Vielen Dank!
Das war's, vielen Dank! Sidequestion: Ich habe auch eine für meine MouseMove-Methode (this.MouseMove + = Form1_MouseMove;), aber nicht für MouseClick. Warum braucht es keinen? – cksubs
Nun ... reagiert es auf einen Mausklick? Wenn es nicht auf Mausklicks reagieren muss, wird es nicht benötigt. Einige Steuerelemente haben automatisch Mausklick-Ereignisse miteinander verknüpft (zum Scrollen und nicht so). Das hängt davon ab, was Sie erreichen möchten. – Kurisu
Ich meine nur meine MouseClick-Methode funktioniert (feuert mit Mausklick) ohne die Notwendigkeit der ".... + = ...." Zeug im Konstruktor. Deshalb habe ich vergessen, so etwas für MouseWheel hinzuzufügen, MouseClick hat gut funktioniert. – cksubs