裝載支援 API 的原生 WPF 瀏覽器
在網頁瀏覽器中裝載 WPF 應用程式是由從 WPF 主機註冊的主動式文件伺服器 (也稱為 DocObject) 所輔助。 Internet Explorer 可以直接啟動主動式文件,並與主動式文件整合。 若要在 Mozilla 瀏覽器中裝載 XBAP 和鬆散的 XAML 文件,WPF 會提供 NPAPI 外掛程式,其提供與 Internet Explorer 類似的 WPF 主動式文件伺服器裝載環境。 不過,在其他瀏覽器和獨立應用程式中裝載 XBAP 和 XAML 文件最簡單的實用方式,是透過 Internet Explorer 網頁瀏覽器控制項。 網頁瀏覽器控制項提供複雜的主動式文件伺服器主控環境,但其可讓自己的主機自訂及擴充該環境,並直接與目前的主動式文件物件通訊。
警告
XBAP 需要舊版瀏覽器才能運作,例如 Internet Explorer 和舊版的 Firefox。 Windows 10 和 Windows 11 通常不支援這些較舊的瀏覽器。 由於安全性風險,現代瀏覽器不再支援 XBAP 應用程式所需的技術。 不再支援啟用 XBAP 的外掛程式。 如需詳細資訊,請參閱 WPF 瀏覽器裝載應用程式 (XBAP) 常見問題集。
WPF 主動式文件伺服器會實作數個常見的裝載介面,包括 IOleObject、IOleDocument、IOleInPlaceActiveObject、IPersistMoniker、IOleCommandTarget。 裝載於網頁瀏覽器控制項時,這些介面可以是來自 IWebBrowser2::Document 屬性所傳回物件的查詢。
IOleCommandTarget
WPF 主動式文件伺服器的 IOleCommandTarget 實作支援標準 OLE 命令群組 (使用 Null 命令群組 GUID) 的許多導覽相關和瀏覽器特定命令。 此外,其會辨識名為 CGID_PresentationHost 的自訂命令群組。 目前,此群組內只有定義一個命令。
DEFINE_GUID(CGID_PresentationHost, 0xd0288c55, 0xd6, 0x4f5e, 0xa8, 0x51, 0x79, 0xde, 0xc5, 0x1b, 0x10, 0xec);
enum PresentationHostCommands {
PHCMDID_TABINTO = 1
};
PHCMDID_TABINTO 會指示 PresentationHost 依據 Shift 鍵的狀態,將焦點切換至其內容中的第一個或最後一個可設定焦點元素。