DesktopWindowXamlSource 类

定义

使桌面应用程序 (例如 WPF 或 Windows 窗体 应用程序) 在与 (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
属性
实现

注解

DesktopWindowXamlSourceWindows 应用 SDK XAML 托管 API 中的主类。 此 API 使非 WASDK 桌面应用程序能够在与窗口句柄关联的 UI 元素中托管派生自 Microsoft.UI.Xaml.UIElement 的任何控件 (HWND) 。 此 API 可由使用 WPF、Windows 窗体 和 Windows API (Win32) 生成的桌面应用程序使用。

如果在创建将托管在它的 UIElement 对象之前创建 DesktopWindowXamlSource 对象,则托管 UIElement 内容的框架可确保将所有对象初始化到同一线程。 如果在创建将托管 UIElement 对象的 DesktopWindowXamlSource 对象之前创建 UIElement 对象,则必须在实例化 UIElement 对象之前调用 Microsoft.UI.Xaml.Hosting.WindowsXamlManager.InitializeForCurrentThread

由于 DesktopWindowXamlSource 派生自 IClosable,因此建议在完成此操作后 将其关闭 (在 .NET) 中 释放 它。

构造函数

DesktopWindowXamlSource()

初始化 DesktopWindowXamlSource 类的新实例。

属性

Content

获取或设置要在桌面应用程序中托管的 Microsoft.UI.Xaml.UIElement 对象。

HasFocus

获取一个值,该值指示 DesktopWindowXamlSource 当前是否在桌面应用程序中具有焦点。

ShouldConstrainPopupsToWorkArea

获取或设置一个值,该值指示是否应将具有类似弹出窗口行为的控件限制为工作区。

SiteBridge

DesktopSiteBridge获取与此 DesktopWindowXamlSource 对象关联的 。

SystemBackdrop

获取或设置用于呈现材料(如 Mica 和 Acrylic)的系统背景。

方法

Close()

关闭并释放此 DesktopWindowXamlSource 使用的任何资源。

Dispose()

执行与释放或重置非托管资源关联的应用程序定义的任务。

Initialize(WindowId)

初始化 DesktopWindowXamlSource 类的新实例。

NavigateFocus(XamlSourceFocusNavigationRequest)

尝试以编程方式将焦点分配给桌面应用程序中的 DesktopWindowXamlSource

事件

GotFocus

DesktopWindowXamlSource 在桌面应用程序 (获得焦点时发生,例如当用户按下 Tab 键时,焦点位于 DesktopWindowXamlSource) 之前的 元素上。

TakeFocusRequested

例如,当主机桌面应用程序收到从 DesktopWindowXamlSource 对象 (获取焦点的请求时发生,用户位于 DesktopWindowXamlSource 中的最后一个可聚焦元素上,然后按 Tab) 。

适用于

另请参阅