Windows Presentation Foundation (WPF) 於 2006 年發行為 .NET Framework 3.0 的一部分。 XAML 瀏覽器應用程式 (XBAP) 功能,允許在網頁瀏覽器中裝載和執行 WPF 應用程式,也同時引進了 WPF 應用程式的一部分。 在 WPF 和 XBAP 於 2006 年發行時,最受歡迎的網頁瀏覽器是 Internet Explorer 7、Mozilla Firefox 2 和 Safari 2。 谷歌 Chrome 尚未上市,因為它於 2008 年兩年後發行。
XBAP 在瀏覽器中使用 ClickOnce 部署技術,這是一種Microsoft技術,可讓使用者按兩下網頁中的連結來安裝和執行應用程式。 不過,這項技術非常依賴瀏覽器中的NPAPI(Netscape 外掛程式應用程式開發介面)支援。 由於安全性和穩定性問題,NPAPI 近年來已逐步淘汰。 Edge、Chrome、Firefox 和 Safari 等主要瀏覽器已移除 NPAPI 外掛程式的支援,這實際上表示 XBAP 應用程式無法再在這些瀏覽器中執行。
支援 XBAP
XBAP 目前支持層級Microsoft有哪些?
.NET Framework 支援 XBAP。 適用於 .NET 的 WPF 不包含 XBAP 支援。
是否有任何原生支援 XBAP 的瀏覽器?
並非完全如此,不再支援針對 XBAP 設計的瀏覽器。 Internet Explorer 11 的支援已於 2022 年 6 月 15 日結束。 某些瀏覽器,例如 Microsoft Edge 和 Google Chrome,具有 Internet Explorer 模式 (IE 模式) 功能,可新增舊版 Internet Explorer 支援。 這些模式不是針對 XBAP 所設計,因此某些 XBAP 功能可能無法運作。 如需詳細資訊,請參閱 什麼是 Internet Explorer (IE) 模式。
如何? 執行 XBAP?
XBAP 必須部署至網頁伺服器,而且您必須使用瀏覽器搭配 Internet Explorer 模式 (IE 模式) 相容性。 您可能需要設定本機原則,才能在適當的 IE 安全性區域中啟用您的應用程式。 如需詳細資訊,請參閱 什麼是 Internet Explorer (IE) 模式 和 在 IE 模式中為 Microsoft Edge 設定舊版瀏覽器支援。
移轉選項
我可以將 XBAP 轉換成 WPF 應用程式嗎?
是。 您可以將應用程式移轉至標準 WPF 應用程式,並透過安裝程式加以部署。 您仍然可以使用 ClickOnce 發佈 WPF 應用程式,但 ClickOnce 需要已啟用 IE 模式的瀏覽器或啟用 ClickOnce 的外掛程式。
我需要在瀏覽器中執行,我的選項為何?
使用 Blazor 和 WebAssembly ASP.NET Core
Blazor 是使用 C# 的完整堆疊 Web 應用程式。 根據程式代碼的組織和分割程度,您可能需要在 Blazor 中重寫應用程式的前端。 Blazor 應用程式可以使用 WebAssembly 部署,讓應用程式在瀏覽器中完全執行用戶端。
如需詳細資訊,請參閱 什麼是 Blazor。
.NET MAUI
如果您已將應用程式建立為 XBAP,使其可在非 Windows 作業系統上執行,請嘗試將您的應用程式轉換成 .NET MAUI,這也會使用 XAML 作為其 UI。 .NET MAUI 與 WPF 不同,雖然它們有許多類似的概念。 如需詳細資訊,請參閱 什麼是 .NET MAUI。
OpenSilver
OpenSilver 專案已建立為 Silverlight 的替代專案。 Silverlight 是很久以前已停止的 WPF 子集。 您的 XBAP 專案可能會順利轉換成 OpenSilver。 如需詳細資訊,請參閱 OpenSilver 網站 和 GitHub 存放 庫。