roker002
Commander
- Registriert
- Dez. 2007
- Beiträge
- 2.107
Ich habe eine Frage. Einige Events von MS haben eine zusätzliche Variable die mir erlaubt die aktuelle Operation ungültig zu machen. Es ist meistens dort, wo man die Datenmengen behandelt. Z.B. BindingList hat sowas ähnliches. Man kann im ausgelösten Event die neuen Daten verwerfen.
Wie wird es normalerweise realisiert? Ich habe schon eine Vorstellung wie man es Lösen könnte, aber es wäre ja gut zu wissen dass man auch einen optimalen Weg hierzu benutzen kann.
Mein Ansatz.
alles läuft über den Selben Thread.
EventArgs beinhaltet einen zusätzlichen Feld mit "Boolean Cancel". Beim Event Springe ich ja auf dem Methodenzeiger in die Richtige Methode. Dort ist mein EventArg mitübergeben. Sobald ich aus dem Delegate raus bin, bin ich sicher, wieder in meine OnXXXEvent Methode. Wenn jetzt im EventArg Cancel auf "true" gesetzt wurde, nehme ich den neuen Wert und überschreibe dem alten Wert... somit habe ich wieder den alten Wert in meine Klasse zurück bekommen.
Ist diese Vorgehensweise korrekt?
THX
Wie wird es normalerweise realisiert? Ich habe schon eine Vorstellung wie man es Lösen könnte, aber es wäre ja gut zu wissen dass man auch einen optimalen Weg hierzu benutzen kann.
Mein Ansatz.
alles läuft über den Selben Thread.
EventArgs beinhaltet einen zusätzlichen Feld mit "Boolean Cancel". Beim Event Springe ich ja auf dem Methodenzeiger in die Richtige Methode. Dort ist mein EventArg mitübergeben. Sobald ich aus dem Delegate raus bin, bin ich sicher, wieder in meine OnXXXEvent Methode. Wenn jetzt im EventArg Cancel auf "true" gesetzt wurde, nehme ich den neuen Wert und überschreibe dem alten Wert... somit habe ich wieder den alten Wert in meine Klasse zurück bekommen.
Ist diese Vorgehensweise korrekt?
THX