Dwa interfejsy i wydarzenia

Jest możliwe interfejsu zdarzenia jako podwójny, istnieją liczby dobry projekt powodów, aby nie zrobić.Podstawowe przyczyny jest, że źródło zdarzenia zostanie wywołane tylko zdarzeń za pośrednictwem vtable lub poprzez Invoke, nie obu.Jeśli źródło zdarzenia pożary zdarzeń jako wywołanie vtable bezpośrednie metody IDispatch nigdy nie należy stosować metody i jest jasne, że interfejs powinna była interfejsu vtable czysty.Jeśli źródło zdarzenia pożary zdarzenia jako wywołanie do Invoke, nigdy nie będzie metod vtable i jest jasne, że interfejs należało dispinterface.Interfejsów zdarzeń można zdefiniować jako duals, będziesz wymagających być klientów do wprowadzenia w życie części interfejsu, który nigdy nie będzie używany.

[!UWAGA]

Ten argument nie dotyczą dwóch interfejsów w ogóle.Z punktu widzenia realizacji duals są szybkie, wygodne i dobrze obsługiwany sposób wykonawczych interfejsy, które są dostępne dla szerokiego zakresu klientów.

Dalsze są powody, aby uniknąć interfejsów zdarzeń podwójnego; Visual Basic ani programu Internet Explorer nie obsługuje je.

Zobacz też

Koncepcje

Dwa interfejsy i ATL