Поделиться через


DesktopWindowXamlSource Класс

Определение

Позволяет классическому приложению (например, WPF или приложению Windows Forms) размещать элементы управления WinUI в любом элементе пользовательского интерфейса, связанном с дескриптором окна (HWND).

/// [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
Атрибуты
Реализации

Комментарии

DesktopWindowXamlSource — это основной класс в API размещения Windows App SDK XAML. Этот API позволяет классическим приложениям, не связанным с WASDK, размещать любой элемент управления, производный от Microsoft.UI.Xaml.UIElement , в элементе пользовательского интерфейса, связанном с дескриптором окна (HWND). Этот API может использоваться классическими приложениями, созданными с помощью WPF, Windows Forms и API Windows (Win32).

Если вы создаете объект DesktopWindowXamlSource перед созданием объектов UIElement , которые будут размещаться в нем, платформа для размещения содержимого UIElement гарантирует, что все объекты будут инициализированы в одном потоке. При создании объектов UIElement перед созданием объекта DesktopWindowXamlSource , в котором они будут размещены, необходимо вызвать Microsoft.UI.Xaml.Hosting.WindowsXamlManager.InitializeForCurrentThread перед созданием экземпляров объектов UIElement .

Так как DesktopWindowXamlSource является производным от IClosable, рекомендуется закрыть его (удалить в .NET) после завершения работы с ним.

Конструкторы

DesktopWindowXamlSource()

Инициализирует новый экземпляр класса DesktopWindowXamlSource .

Свойства

Content

Возвращает или задает объект Microsoft.UI.Xaml.UIElement , который требуется разместить в классическом приложении.

HasFocus

Возвращает значение, указывающее, находится ли desktopWindowXamlSource в настоящее время фокусом в классическом приложении.

ShouldConstrainPopupsToWorkArea

Возвращает или задает значение, указывающее, должны ли элементы управления с поведением, похожим на всплывающее окно, ограничиваться рабочей областью.

SiteBridge

Возвращает объект , связанный DesktopSiteBridge с этим объектом DesktopWindowXamlSource .

SystemBackdrop

Возвращает или задает системный фон, используемый для отрисовки таких материалов, как Mica и Акрил.

Методы

Close()

Закрывает и освобождает все ресурсы, используемые этим DesktopWindowXamlSource.

Dispose()

Выполняет определяемые приложением задачи, связанные с удалением, высвобождением или сбросом неуправляемых ресурсов.

Initialize(WindowId)

Инициализирует новый экземпляр класса DesktopWindowXamlSource .

NavigateFocus(XamlSourceFocusNavigationRequest)

Пытается программно передать фокус на DesktopWindowXamlSource в классическом приложении.

События

GotFocus

Происходит, когда DesktopWindowXamlSource получает фокус в классическом приложении (например, когда пользователь нажимает клавишу TAB , когда фокус находится на элементе непосредственно перед DesktopWindowXamlSource).

TakeFocusRequested

Происходит, когда ведущее классическое приложение получает запрос на возврат фокуса из объекта DesktopWindowXamlSource (например, пользователь находится на последнем фокусируемом элементе в DesktopWindowXamlSource и нажимает клавишу TAB).

Применяется к

См. также раздел