Freigeben über


DesktopWindowXamlSource Klasse

Definition

Ermöglicht es einer Nicht-UWP-Desktopanwendung (z. B. einer WPF- oder Windows Forms-Anwendung), UWP-Steuerelemente in jedem UI-Element zu hosten, das einem Fensterhandle (HWND) zugeordnet ist.

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

Windows-Anforderungen

Gerätefamilie
Windows Desktop Extension SDK (eingeführt in 10.0.17763.0)
API contract
Windows.UI.Xaml.Hosting.HostingContract (eingeführt in v3.0)

Hinweise

DesktopWindowXamlSource ist die Standard-Klasse in der UWP-XAML-Hosting-API. Diese API ermöglicht es Nicht-UWP-Desktopanwendungen, jedes Steuerelement zu hosten, das von Windows.UI.Xaml.UIElement abgeleitet ist, in einem UI-Element, 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. Weitere Informationen finden Sie unter Verwenden der UWP-XAML-Hosting-API in einer Desktopanwendung.

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

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

Konstruktoren

DesktopWindowXamlSource()

Initialisiert einen neuen instance der DesktopWindowXamlSource-Klasse.

Eigenschaften

Content

Ruft das Windows.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.

Methoden

Close()

Schließt und gibt alle ressourcen frei, die von diesem 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.

NavigateFocus(XamlSourceFocusNavigationRequest)

Versucht, dem DesktopWindowXamlSource in der Desktopanwendung programmgesteuert den Fokus zu geben.

Ereignisse

GotFocus

Tritt auf, wenn desktopWindowXamlSource den Fokus in der Desktopanwendung erhält (z. B. drückt der Benutzer die TAB-TASTE , während sich der Fokus auf dem Element kurz vor DesktopWindowXamlSource befindet).

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 DesktopWindowXamlSource und drückt die TAB-TASTE).

Gilt für:

Weitere Informationen