ERLEDIGT
NEIN
NEIN
ANTWORTEN
10
10
ZUGRIFFE
749
749
EMPFEHLEN
-
Hi
Wie oben schon geschrieben, hab ich das Problem, dass bei meinem selbsterstellten Event, mit eigenen EventArgs der EventHandler immer null ist!!
hier erstell ich mein Event
Code :1 2 3 4 5 6 7 8 9 10 11 12
public event EventHandler<SerialEventArgs> SerialreceiveEvent; protected virtual void OnSerialreceiveEvent(SerialEventArgs e) { EventHandler<SerialEventArgs> serialreceiveevent = SerialreceiveEvent; if (serialreceiveevent != null) { serialreceiveevent(this, e); } }
Hier ruf ich es auf
Code :1 2 3 4 5 6 7 8
private void SerialRead(byte[] data) { byte[] message = new byte[7]; data.CopyTo(message, 0); OnSerialreceiveEvent(new SerialEventArgs(message)); }
Hier ist meine ?deklaration? (is das eine Deklaration?)
Code :1 2 3 4 5
public TCPServer() { serialcom2.SerialreceiveEvent += Serialrec_SerialrecEvent; }
und das ist mein Event
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
private void Serialrec_SerialrecEvent(object objSender, SerialEventArgs e) { HWAddress[0] = e.SerialData[0]; HWAddress[1] = e.SerialData[1]; HWAddress[2] = e.SerialData[2]; HWAddress[3] = e.SerialData[3]; int GateLightindex = ServerGatelist.FindIndex(FindrightLight); for (int i = 0; i < lights.Count; i++) { if (lights[i].getAddress() == ServerGatelist[GateLightindex].GetAddress()) { lights[i].setRGBRed(e.SerialData[4]); lights[i].setRGBGreen(e.SerialData[5]); lights[i].setRGBBlue(e.SerialData[6]); } } for (int i = 0; i < ServerGatelist.Count; i++) { if (HWAddress == ServerGatelist[i].GetHardwareaddress()) { udpserver.UDP_Server_Light(ServerGatelist[i].GetGroup(), ServerGatelist[i].GetAddress()); break; } } }
Und natuerlich noch die EventArgs
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
using System; using System.Collections.Generic; using System.Text; namespace Lightcontrol { class SerialEventArgs : EventArgs { private byte[] serdata = new byte[8]; public SerialEventArgs(byte[] value) { serdata = value; } public byte[] SerialData { get { return serdata; } set { serdata = value; } } } }
Ich glaub ich hab irgendwas vergessen!! nur was****
Ich hoffe ihr koennt mir weiterhelfen
mfg
Bastian
-
17.12.11 08:34 #2
Wird denn die Methode SerialRead(byte[]) überhaupt aufgerufen? Ansonsten kann ich so keinen Fehler finden, sieht eigentlich richtig aus.
Man sagt, das Schwert eines Samurai sei seine Seele ...
Mit den Beiträgen ist es wie mit Schwertern: Je besser die Rohstoffe sind und je öfter man diese bearbeitet, desto hochwertiger sind sie.
Das Schmieden ist eine Kunst; Das Schreiben auch ;)
-
Hi
ja die Methode wird aufgerufen!!
Ich scheitere an der If-Schleife in der abgefragt wird, ob der EventHandler null ist!!
an was koennte das noch liegen**** kann ich da irgendwie was mit den Klassen versemmelt haben?
-
17.12.11 08:45 #4
Es gibt keine if-Schleifen, nur if-Abfragen.
Eventuell könntest du ja diesen Code etwas ändern:
Etwas anderes finde ich gerade auch nicht.Code csharp:1
serialcom2.SerialreceiveEvent += new EventHandler<SerialEventArgs>(Serialrec_SerialrecEvent);
Man sagt, das Schwert eines Samurai sei seine Seele ...
Mit den Beiträgen ist es wie mit Schwertern: Je besser die Rohstoffe sind und je öfter man diese bearbeitet, desto hochwertiger sind sie.
Das Schmieden ist eine Kunst; Das Schreiben auch ;)
-
Oh... Sorry!! Natuerlich is ne Abfrage!! Keine Ahnung was ich da gedacht hab.... *schaem*
Leider wars des nicht...
Koennte mir vielleicht einer erklaeren wie des mit dem Handler da ablaeuft? Ich versteh des nicht ganz.
Kann ich da irgendwas in die falsche klasse reingeschrieben haben? Die ersten 2 Ausschnitte sind in einer und die 2. Zwei in einer andern...
Die EventArgs sind eine eigene...
-
17.12.11 09:03 #6
Gibt es irgendwelche Fehler, wenn du das Programm im Debug-Modus startest? Weil jetzt wird es langsam echt kurrios. Und ist die Klasseneigenschaft serialcom2 überhaupt initialisiert? Wenn nicht, müsste es eigentlich knalln.
Man sagt, das Schwert eines Samurai sei seine Seele ...
Mit den Beiträgen ist es wie mit Schwertern: Je besser die Rohstoffe sind und je öfter man diese bearbeitet, desto hochwertiger sind sie.
Das Schmieden ist eine Kunst; Das Schreiben auch ;)
-
Hi
ne da kommen keine Fehler und keine Warnungen!!
meinst du mit der initialisierung das hier: private SERIAL2_1 serialcom2 = new SERIAL2_1();
Wenn ja dann hab ichs!!
Kann das sein, dass bei Windows CE die "CustomEventArgs" nicht funktionieren? Ich programmier das naemlich fuer ein Touchpanel!!
-
17.12.11 09:14 #8
Damit kenn ich mich leider nicht aus, kann daher auch nix zu sagen. Vielleicht weiß ja noch jemand anderes was ...
Man sagt, das Schwert eines Samurai sei seine Seele ...
Mit den Beiträgen ist es wie mit Schwertern: Je besser die Rohstoffe sind und je öfter man diese bearbeitet, desto hochwertiger sind sie.
Das Schmieden ist eine Kunst; Das Schreiben auch ;)
-
Ok
Dann wart ich mal... Aber danke fuer deine Schnelle Hilfe!!
Was komisch ist, das ist nicht das einzige selbsterstellte Event!! Aber das erste und einzige mit "customEventArgs"
-
Ok
heute hab ich mal den Versuch gestartet ohne die customEventArgs zu arbeiten!
Es funktioniert auch nicht******
-
Ich glaub ich hab den Fehler!!
Ich will das Event im gleichen Thread ausloesen und empfangen!!
Es ginge ja auch mit einer einfachen Methode, die in der ersten Klasse ist und von einer 2. Klasse aufgerufen wird!
Aber da hab ich ein problem, die erste Klasse ruft auch methoden der 2. Klasse auf!!
und wenn ich diese Klasse gegenseitig bekannt mache, bekomm ich ne initialisierungs Endlosschleife!!
Wie kann ich das umgehen?
Ähnliche Themen
-
Frage selbsterstelltes Steuerelement
Von RamDav im Forum .NET Windows FormsAntworten: 3Letzter Beitrag: 29.09.09, 21:21 -
Selbsterstelltes Bild aus Klasse anzeigen
Von cesupa im Forum PHPAntworten: 2Letzter Beitrag: 07.01.07, 09:01 -
Selbsterstelltes WinXP Home Preinstallation Kit nicht
Von TMG im Forum Microsoft WindowsAntworten: 2Letzter Beitrag: 02.03.06, 21:43 -
Selbsterstelltes Control im Forms Designer benutzen
Von mage im Forum .NET ArchivAntworten: 10Letzter Beitrag: 06.10.04, 10:37 -
selbsterstelltes bild in Maya einbauen
Von galdasc im Forum Autodesk Maya (ehemals Alias)Antworten: 1Letzter Beitrag: 13.04.04, 10:09





Zitieren
Login





