DesktopWindowXamlSource 類別

定義

允許桌面應用程式在任何與視窗句柄(HWND)相關聯的 UI 元素中承載 WinUI 控制項。

/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 327680)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class DesktopWindowXamlSource : IClosable
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 327680)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class DesktopWindowXamlSource : System.IDisposable
Public Class DesktopWindowXamlSource
Implements IDisposable
繼承
Object IInspectable DesktopWindowXamlSource
屬性
實作

範例

這個範例展示了如何在 Win32 應用程式中新增一個包含 XAML 內容的 WASDK 島嶼(該應用程式必須安裝 Windows 應用程式 SDK 執行環境才能執行)。

簡易島應用程式

備註

DesktopWindowXamlSourceWindows 應用程式 SDK(WASDK)XAML 主機 API 的主要類別。 此 API 使非 WASDK 桌面應用程式能承載任何來自 Microsoft 的控制項。UI。Xaml.UIElement 在與視窗句柄(HWND)相關聯的 UI 元素中。 此 API 可用於使用 WPF、Windows Forms 及 Windows API(Win32)建置的桌面應用程式。

如果你在建立將要被寄存的 UIElement 物件之前先建立 DesktopWindowXamlSource 物件,負責承載 UIElement 內容的框架會確保所有物件初始化到同一個執行緒。 如果你在建立 DesktopWindowXamlSource 物件(將要架設它們)之前,先建立 UIElement 物件,你必須呼叫 Microsoft。UI。Xaml.Hosting.WindowsXamlManager.InitializeForCurrentThread,然後先實例 UIElement 物件。

由於 DesktopWindowXamlSource 源自 IClosable,我們建議你在物件完成後關閉(以 .NET 格式丟棄)。

建構函式

名稱 Description
DesktopWindowXamlSource()

初始化 DesktopWindowXamlSource 類別的新實例。

屬性

名稱 Description
Content

取得或設定 Microsoft。UI。Xaml.UIElement 物件,你想在桌面應用程式中架設。

HasFocus

會取得一個值,表示 DesktopWindowXamlSource 目前是否在桌面應用程式中有焦點。

ShouldConstrainPopupsToWorkArea

取得或設定一個值,指示具有彈出式行為的控制項是否應限制在工作區域內。

SiteBridge

取得與此 DesktopWindowXamlSource 物件相關聯的 DesktopSiteBridge

SystemBackdrop

取得或設定系統背景,用來渲染像雲母和壓克力等材質。

方法

名稱 Description
Close()

關閉並釋放本 DesktopWindowXamlSource 所使用的資源。

Dispose()

執行與釋放、釋放或重設非受控資源相關聯的應用程式定義工作。

Initialize(WindowId)

初始化 DesktopWindowXamlSource 類別的新實例。

NavigateFocus(XamlSourceFocusNavigationRequest)

嘗試以程式化的方式聚焦桌面應用程式中的 DesktopWindowXamlSource

事件

名稱 Description
GotFocus

DesktopWindowXamlSource 在桌面應用程式中獲得焦點時(例如使用者在焦點放在 DesktopWindowXamlSource 前的元素時按下 Tab 鍵)。

TakeFocusRequested

當主機桌面應用程式收到來自 DesktopWindowXamlSource 物件的請求「回焦點」時(例如,使用者在 DesktopWindowXamlSource 中最後一個可聚焦元素並按下 Tab 鍵)。

適用於

另請參閱