次の方法で共有


デュアル インターフェイスとイベント

double としてイベント インターフェイスをデザインすることは可能ですが、破棄しないいくつかの適切なデザイン理由があります。基本的な理由は、イベントのソースが vtable または Invokeによってのみイベントを発生させることではありません。イベント ソースを直接 vtable メソッド呼び出しとしてイベントを発生する場合、IDispatch のメソッドが使用されず、インターフェイスが、純粋 vtable インターフェイス必要があることを明示的です。イベント ソースが Invokeの呼び出しとしてイベントを発生する場合、vtable メソッドが使用されず、ディスパッチ インターフェイスが必要であることを明示的です。定義する場合は、イベントはために、倍になりますが、使用しないインターフェイスの一部を実装する必要があります。クライアントがインターフェイスです。

[!メモ]

この引数は、デュアル インターフェイスに、一般には適用されません。実装の観点から、クライアントがアクセスできるインターフェイスを実装するが、便利な、完全サポートされる方法は、倍になります。

デュアル インターフェイスのイベントを避けるそのほかの理由があります; Visual Basic が Internet Explorer でもサポートされていません。

参照

概念

デュアル インターフェイスと ATL