Antarmuka yang Diperlukan (COM)

Tabel di bawah ini mencantumkan antarmuka Kontainer Kontrol ActiveX, dan menunjukkan antarmuka mana yang opsional, dan yang wajib dan harus diimplementasikan oleh kontainer kontrol.

Antarmuka Wajib diisi? Komentar
IOleClientSite
Ya
IAdviseSink
No
Hanya ketika kontainer menginginkan (a) pemberitahuan perubahan data (kontrol dengan IDataObject), (b) melihat pemberitahuan perubahan (kontrol yang tidak aktif dan memiliki IViewObject atau IViewObject2), dan (c) pemberitahuan lain dari kontrol yang bertindak sebagai objek tersemat standar.
Situs IOleInPlaceSite
Ya
IOleControlSite
Ya
IOleInPlaceFrame
Ya
IOleContainer
Ya
Lihat catatan 1
IDispatch untuk properti sekitar
Ya
Lihat catatan 2 dan Properti Sekitar untuk Kontrol
Mengontrol Set Peristiwa
Ya
Lihat catatan 2
ISimpleFrameSite
No
ISimpleFrameSite dan dukungan untuk bingkai sederhana berlapis bersarang bersifat opsional.
IPropertyNotifySink
No
Hanya diperlukan untuk kontainer yang (a) memiliki UI pengeditan properti mereka sendiri yang akan memerlukan pembaruan setiap kali kontrol mengubah properti itu sendiri atau (b) ingin mengontrol perubahan properti [requestedit] dan fitur pengikatan data lainnya.
IErrorInfo
Ya
Wajib jika kontainer mendukung antarmuka ganda. Lihat catatan 2.
IClassFactory2
No
Dukungan sangat disarankan.
  1. IOleContainer diimplementasikan pada objek dokumen atau formulir (atau analog yang sesuai) yang menyimpan situs kontainer. Kontrol menggunakan IOleContainer untuk menavigasi ke kontrol lain dalam dokumen atau formulir yang sama.
  2. Dukungan untuk antarmuka ganda tidak wajib, tetapi sangat disarankan. Menulis kontainer kontrol ActiveX untuk memanfaatkan antarmuka ganda akan mendapatkan performa yang lebih baik dengan kontrol yang menawarkan dukungan antarmuka ganda.

Kontainer kontrol ActiveX harus mendukung pengecualian OLE Automation. Jika kontainer kontrol mendukung antarmuka ganda, maka harus menangkap pengecualian otomatisasi melalui IErrorInfo.

Kontainer