AuronX Geschrieben July 21, 2012 at 09:26 Geschrieben July 21, 2012 at 09:26 Hallo alle, für die C#-Entwickler habe ich vor einiger Zeit ein Pull Request an Tinkerforge gestellt, dass die Callback-behandlung auf Events umstellt, so wie es in .NET üblich ist. Bisher wurden die Änderungen nicht von TF übernommen, was ich verstehen kann, da ich die Delegates alle umbenannt habe und es dadurch etwas inkompatibel zu den aktuellen Bindings ist. Um meine Motivation zu erhöhen (ich muss im Moment bei allen Änderungen am Original ja auch meine Bindings aktualisieren) dachte ich mir ich poste meine Bindings hier einfach mal. Falls jemand Interesse daran hat oder Feedback geben möchte höre ich es gerne ^^ Die Binding gibt es hier: https://github.com/downloads/NobodysNightmare/generators/TF-with-Events_1.1.9.zip Das ganze github-project: https://github.com/NobodysNightmare/generators Warum eigentlich Ich hatte zweieinhalb Motivationsgründe ^^ 1. Mehr als ein Listener pro Callback (siehe Code unten) 2. Typ-Prüfung zur Compilezeit (falls man einen falschen Delegate angibt knallt es nicht erst beim Ausführen) 2,5. In .NET wird es halt einfach so gemacht, ich finde es "sauberer" Noch schnell Beispielcode und dann bin ich auch schon fertig: servoBrick.PositionReached += firstHandler; servoBrick.PositionReached += secondHandler; ... public void firstHandler(byte servoNum, short position) { if(servoNum != 0) return; //Do something with servo 0 } public void secondHandler(byte servoNum, short position) { if(servoNum != 1) return; //Do something with servo 1 } Zitieren
The_Real_Black Geschrieben July 22, 2012 at 08:32 Geschrieben July 22, 2012 at 08:32 Nette Idee und ich finde für C# solch eine Lösung auch sauberer. ^^ Zitieren
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.