DesktopWindowXamlSource 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
启用非 UWP 桌面应用程序 (例如,WPF 或 Windows 窗体 应用程序) 在与 HWND) 窗口句柄关联的任何 UI 元素 (中托管 UWP 控件。
/// [Windows.Foundation.Metadata.ContractVersion(Windows.UI.Xaml.Hosting.HostingContract, 196608)]
/// [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(Windows.UI.Xaml.Hosting.HostingContract), 196608)]
[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
- 继承
- 属性
- 实现
Windows 要求
设备系列 |
Windows Desktop Extension SDK (在 10.0.17763.0 中引入)
|
API contract |
Windows.UI.Xaml.Hosting.HostingContract (在 v3.0 中引入)
|
注解
DesktopWindowXamlSource 是 UWP XAML 托管 API 中的main类。 此 API 使非 UWP 桌面应用程序能够在与窗口句柄 (HWND) 关联的 UI 元素中托管派生自 Windows.UI.Xaml.UIElement) 的任何控件。 此 API 可由使用 WPF、Windows 窗体 和 Windows API (Win32) 生成的桌面应用程序使用。 有关详细信息,请参阅 在桌面应用程序中使用 UWP XAML 托管 API。
如果在创建将托管在它的 Windows.UI.Xaml.UIElement 对象之前创建 DesktopWindowXamlSource 对象,则用于托管 Windows.UI.Xaml.UIElement 内容的框架可确保将所有对象初始化到同一线程。 如果在创建托管它们的 DesktopWindowXamlSource 对象之前创建 Windows.UI.Xaml.UIElement 对象,则必须在实例化 Windows.UI.Xaml.UIElement 对象之前调用 WindowsXamlManager.InitializeForCurrentThread。
由于 DesktopWindowXamlSource 派生自 IClosable,因此建议在完成此操作后 将其关闭 (将其 释放 在 .NET) 中。
构造函数
DesktopWindowXamlSource() |
初始化 DesktopWindowXamlSource 类的新实例。 |
属性
Content |
获取或设置要在桌面应用程序中托管的 Windows.UI.Xaml.UIElement 对象。 |
HasFocus |
获取一个值,该值指示 DesktopWindowXamlSource 当前是否在桌面应用程序中具有焦点。 |
方法
Close() |
关闭并释放此 DesktopWindowXamlSource 使用的任何资源。 |
Dispose() |
执行与释放或重置非托管资源关联的应用程序定义的任务。 |
NavigateFocus(XamlSourceFocusNavigationRequest) |
尝试以编程方式将焦点分配给桌面应用程序中的 DesktopWindowXamlSource 。 |
事件
GotFocus |
例如,当 DesktopWindowXamlSource 在桌面应用程序中获得焦点 (用户按 Tab 键时,焦点位于 DesktopWindowXamlSource) 之前的元素上时发生。 |
TakeFocusRequested |
例如,当主机桌面应用程序收到从 DesktopWindowXamlSource 对象 (获取焦点的请求时发生,用户位于 DesktopWindowXamlSource 中的最后一个可聚焦元素上,然后按 Tab) 。 |