| 

.NET C# Java Javascript Exception

3
Hi zusammen,

wie kann man so MouseEvent-Methoden wie z.B.:
private void button1_MouseDown(object sender, MouseEventArgs e)
{
//Ausführbarer Code
MessageBox.Show("Funktioniert!");
}

in eine eigenen Klasse unterbringen?

Hab dafür in VS2010 schon die Klasse "MouseControl.cs" erstellt, die Methode eingefügt und im Main() die MouseControl auch wie folgt instantiiert:
MouseControl mc = new MouseControl();

Auch den MouseEventHandler für Button1 ist wie folgt angepasst:
this.button1.MouseDown += new MouseEventHandler(mc.button1_MouseDown);

VS2010 gibt keine Fehler oder Warnungen, in dieser Konstellation, aus.
Leider wird der "Ausführbarer Code" nicht ausgeführt, der Button reagiert nicht :(.

Ziel der ganzen Aktion ist das diese MouseControl-Klasse wiedererwendbar sein soll,
und die Trennung von Programm und Steuerung klarer ist.
24.11.2011
DaTaBeRt 416 1 7
1 Antwort
1
Reicht es dir eine statische Methode zu verwenden? Dann funktioniert folgendes:
public class MouseController
{
public static void MouseDown(object sender, EventArgs e)
{
MessageBox.Show(string.Concat("Es wurde geklickt\n", sender.ToString()));
}
}

button1.MouseDown += MouseController.MouseDown;



Nachschlag:
Dann hilft dir evt. folgender Link weiter: Can I place the mouse event handler on a separate thread?
24.11.2011
Jürgen Luhr 7,1k 1 9
hmm, hab es getestet, es scheint nicht zu reichen.
Bei mir werden in den Methoden threads gestartet.
Danke für deine Antwort
DaTaBeRt 24.11.2011

Stelle deine .net-Frage jetzt!
TOP TECHNOLOGIES CONSULTING GmbH