event aus interfece explizit implementieren
-
Hallo,
möchte gerne ein event, dass in 2 interfaces, gleich heißt explizit implementieren. Wie sieht denn da die syntax aus?
-
Push und ein paar Zusatzinfos:
Nochmal das Problem.
Ich habe zwei interfaces, die ein event gleichen Namens haben.interface class I1 { event System::EventHandler^ Changed; }; interface class I2 { event System::Threading::ThreadStart^ Changed; }
Jetzt möchte ich beide interfaces in einer Klasse implementieren.
Ich hätte gedacht das sollte genauso gehen wie bei Funktionen:ref class Impl : I1, I2 { event System::EventHandler^ Changed1 = I1::Changed; event System::Threading::ThreadStart^ Changed2 = I2::Changed; }
leider ist dem nicht so.
-
Das geht ja auch nur für Funktionen. Gottseidank sind Events auch bloss Funktionen:
ref class FOOO : I1, I2 { public: virtual void I1_Changed_add(System::EventHandler^) = I1::Changed::add { // ... } virtual void I1_Changed_remove(System::EventHandler^) = I1::Changed::remove { // ... } virtual void I2_Changed_add(System::Threading::ThreadStart^) = I2::Changed::add { // ... } virtual void I2_Changed_remove(System::Threading::ThreadStart^) = I2::Changed::remove { // ... } };