Sprache

CompositionTarget.Rendered Ereignis

Definition

Tritt unmittelbar nach dem Rendern des Kernrenderingprozesses ein Frame auf. Mit diesem Ereignis können Sie bestimmen, wie lange jeder Frame zum Rendern benötigt.

// Register
static event_token Rendered(EventHandler<RenderedEventArgs> const& handler) const;

// Revoke with event_token
static void Rendered(event_token const* cookie) const;

// Revoke with event_revoker
static CompositionTarget::Rendered_revoker Rendered(auto_revoke_t, EventHandler<RenderedEventArgs> const& handler) const;
public static event System.EventHandler<RenderedEventArgs> Rendered;
function onRendered(eventArgs) { /* Your code */ }
Microsoft.UI.Xaml.Media.CompositionTarget.addEventListener("rendered", onRendered);
Microsoft.UI.Xaml.Media.CompositionTarget.removeEventListener("rendered", onRendered);
- or -
Microsoft.UI.Xaml.Media.CompositionTarget.onrendered = onRendered;
Public Shared Custom Event Rendered As EventHandler(Of RenderedEventArgs) 

Ereignistyp

Hinweise

Tip

Es wird empfohlen, den Visual Studio Application Timeline Profiler beim Entwickeln und Testen Ihrer Anwendung zu verwenden. Sie enthält detailliertere Informationen zum Ressourcenverbrauch Ihrer Anwendung, einschließlich der Zeit für die Vorbereitung von UI-Frames.

Sie können das gerenderte Ereignis verwenden, um die Framedauer und die Reaktionsfähigkeit der Anwendung zur Laufzeit ohne Visual Studio oder einen angefügten Debugger zu messen. Dies kann beispielsweise verwendet werden, um Telemetrie für Apps zu generieren, nachdem sie bereitgestellt wurden, oder um die Menge der benutzerdefinierten DirectX-Renderingarbeit anzupassen, die eine Anwendung für jeden Frame ausführt.

Eine längere Framedauer bedeutet, dass Ihre App mehr Arbeit ausführen musste, bevor ein Frame gerendert werden konnte. Framedauern, die länger als ca. 16 Millisekunden sind, bedeuten, dass Ihre Anwendung nicht mit der empfohlenen Häufigkeit von 60 Frames pro Sekunde aktualisieren kann, sodass der Benutzer möglicherweise eine spürbare Verzögerung bei der Reaktionsfähigkeit der Benutzeroberfläche hat.

Wenn lange Framedauern angezeigt werden, sollten Sie die Profilerstellung Ihrer Anwendung mithilfe der Visual Studio Anwendungszeitachse in Betracht ziehen und die empfohlenen bewährten Methoden für die Leistung implementieren.

Handler für "Gerendert" werden im UI-Thread ausgeführt, obwohl sie nicht an ein bestimmtes UI-Element gebunden sind. Es ist ratsam, alle gerenderten Handler zu entfernen, wenn Sie sie nicht mehr benötigen, und fügen Sie sie nur hinzu, wenn Sie sie benötigen.

Gilt für: