Freigeben über


DesktopWindowXamlSource Klasse

Definition

Ermöglicht einer Desktopanwendung (z. B. einer WPF- oder Windows Forms-Anwendung) das Hosten von WinUI-Steuerelementen in jedem Benutzeroberflächenelement, das einem Fensterhandle (HWND) zugeordnet ist.

/// [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
Vererbung
Object IInspectable DesktopWindowXamlSource
Attribute
Implementiert

Hinweise

DesktopWindowXamlSource ist die primäre Klasse in der Windows App SDK XAML-Hosting-API. Mit dieser API können Nicht-WASDK-Desktopanwendungen alle Von Microsoft.UI.Xaml.UIElement abgeleiteten Steuerelemente in einem Benutzeroberflächenelement hosten, das einem Fensterhandle (HWND) zugeordnet ist. Diese API kann von Desktopanwendungen verwendet werden, die mit WPF, Windows Forms und der Windows-API (Win32) erstellt wurden.

Wenn Sie ein DesktopWindowXamlSource-Objekt erstellen, bevor Sie die UIElement-Objekte erstellen, die darin gehostet werden, stellt das Framework zum Hosten von UIElement-Inhalten sicher, dass alle Objekte für denselben Thread initialisiert werden. Wenn Sie die UIElement-Objekte erstellen, bevor Sie das DesktopWindowXamlSource-Objekt erstellen, in dem sie gehostet werden, müssen Sie Microsoft.UI.Xaml.Hosting.WindowsXamlManager.InitializeForCurrentThread aufrufen, bevor Sie die UIElement-Objekte instanziieren.

Da DesktopWindowXamlSource von IClosable abgeleitet ist, empfiehlt es sich, es zu schließen (in .NET zu entsorgen ), wenn Sie damit fertig sind.

Konstruktoren

DesktopWindowXamlSource()

Initialisiert eine neue instance der DesktopWindowXamlSource-Klasse.

Eigenschaften

Content

Ruft das Microsoft.UI.Xaml.UIElement-Objekt ab, das Sie in der Desktopanwendung hosten möchten, oder legt es fest.

HasFocus

Ruft einen Wert ab, der angibt, ob desktopWindowXamlSource derzeit den Fokus in der Desktopanwendung hat.

ShouldConstrainPopupsToWorkArea

Ruft einen Wert ab, der angibt, ob Steuerelemente mit Popupverhalten auf den Arbeitsbereich beschränkt werden sollen, oder legt diesen fest.

SiteBridge

Ruft das ab, das DesktopSiteBridge diesem DesktopWindowXamlSource-Objekt zugeordnet ist.

SystemBackdrop

Ruft den Systemhintergrund ab, der zum Rendern von Materialien wie Glimmer und Acryl verwendet wird, oder legt diesen fest.

Methoden

Close()

Schließt und gibt alle Ressourcen frei, die von dieser DesktopWindowXamlSource verwendet werden.

Dispose()

Führt anwendungsspezifische Aufgaben durch, die mit der Freigabe, der Zurückgabe oder dem Zurücksetzen von nicht verwalteten Ressourcen zusammenhängen.

Initialize(WindowId)

Initialisiert eine neue instance der DesktopWindowXamlSource-Klasse.

NavigateFocus(XamlSourceFocusNavigationRequest)

Versucht, den Fokus programmgesteuert auf die DesktopWindowXamlSource in der Desktopanwendung zu legen.

Ereignisse

GotFocus

Tritt auf, wenn desktopWindowXamlSource den Fokus in der Desktopanwendung erhält (z. B. wenn der Benutzer die TAB-TASTE drückt, während der Fokus auf das Element direkt vor desktopWindowXamlSource liegt).

TakeFocusRequested

Tritt auf, wenn die Hostdesktopanwendung eine Anforderung empfängt, die den Fokus vom DesktopWindowXamlSource-Objekt zurücknimmt (z. B. befindet sich der Benutzer auf dem letzten fokussierbaren Element in der DesktopWindowXamlSource und drückt die Registerkarte).

Gilt für:

Weitere Informationen