Delen via


Ondersteunende API's voor systeemeigen WPF-browserhosting

Het hosten van WPF-toepassingen in webbrowsers wordt mogelijk gemaakt door een Active Document-server (ook wel docObject genoemd) die is geregistreerd bij de WPF-host. Internet Explorer kan rechtstreeks worden geactiveerd en geïntegreerd met een actief document. Voor het hosten van XBAPs en losse XAML-documenten in Mozilla-browsers biedt WPF een NPAPI-invoegtoepassing, die een vergelijkbare hostingomgeving biedt als de WPF Active Document-server zoals Internet Explorer doet. De eenvoudigste praktische manier om XBAPs- en XAML-documenten in andere browsers en zelfstandige toepassingen te hosten, is echter via het besturingselement webbrowser van Internet Explorer. Het besturingselement Webbrowser levert de complexe hostomgeving van de Active Document-server, maar stelt zijn eigen host in staat om die omgeving aan te passen en uit te breiden en rechtstreeks te communiceren met het huidige Active Document-object.

Waarschuwing

XBAPs vereisen dat verouderde browsers werken, zoals Internet Explorer en oude versies van Firefox. Deze oudere browsers worden meestal niet ondersteund in Windows 10 en Windows 11. Moderne browsers bieden geen ondersteuning meer voor de technologie die is vereist voor XBAP-apps vanwege beveiligingsrisico's. Invoegtoepassingen die XBAPs inschakelen, worden niet meer ondersteund. Zie Veelgestelde vragen over door de WPF-browser gehoste toepassingen (XBAP)voor meer informatie.

De WPF Active Document-server implementeert verschillende algemene hostinginterfaces, waaronder IOleObject, IOleDocument, IOleInPlaceActiveObject, IPersistMoniker, IOleCommandTarget. Wanneer deze interfaces in de Webbrowser-control worden gehost, kan deze vanuit het object worden opgevraagd via de eigenschap IWebBrowser2::Document.

IOleCommandTarget

De implementatie van de WPF Active Document-server van IOleCommandTarget ondersteunt vele browserspecifieke en navigatiegerelateerde opdrachten van de standaard OLE-opdrachtgroep (met een null-opdrachtgroep-GUID). Daarnaast herkent deze een aangepaste opdrachtgroep met de naam CGID_PresentationHost. Momenteel is er slechts één opdracht gedefinieerd in deze groep.

DEFINE_GUID(CGID_PresentationHost, 0xd0288c55, 0xd6, 0x4f5e, 0xa8, 0x51, 0x79, 0xde, 0xc5, 0x1b, 0x10, 0xec);
enum PresentationHostCommands {
   PHCMDID_TABINTO = 1
};

PHCMDID_TABINTO geeft PresentationHost opdracht om de focus te verplaatsen naar het eerste of laatste focusbare element in de inhoud, afhankelijk van de status van de Shift-toets.

In deze sectie

IEnumRAWINPUTDEVICEIWpfHostSupport