2014-05-14 4 views

Antwort

5

Sie können einen Blick auf at this question at MSDN werfen, der auf this answer on SO zeigt. Kurz gesagt, während mit WinRT Sie DisplayRequest class verwenden können:

Apps, die Video zeigen oder über einen längeren Zeitraum ohne Benutzereingabe auszuführen anfordern kann, dass das Display eingeschaltet bleiben, durch den Aufruf DisplayRequest :: RequestActive. Wenn eine Anzeigeanforderung aktiviert ist, bleibt die Anzeige des Geräts eingeschaltet, solange die App sichtbar ist. Wenn der Benutzer die App aus dem Vordergrund bewegt, deaktiviert das System die Anzeigeanforderungen der App und reaktiviert sie, wenn die App in den Vordergrund zurückkehrt.

Es gibt an example at MSDN, auch Richtlinien zu folgen, erinnern und DisplayRequests freigeben, wenn sie nicht mehr benötigt werden.

16

-Code für Copy-Paste :)

Windows.System.Display.DisplayRequest KeepScreenOnRequest = new Windows.System.Display.DisplayRequest(); 

KeepScreenOnRequest.RequestActive(); 
+2

abstimmen zuerst. Obwohl es offensichtlich ist, möchte ich noch darauf hinweisen, dass es nicht funktionieren würde, wenn diese beiden Anweisungen in eine Methode eingefügt würden, weil KeepScreenOnRequest von GC gesammelt wird, nachdem der Gültigkeitsbereich verlassen wurde. – Hong

+1

GC tritt normalerweise auf, wenn sein Referenzzähler 0 erreicht, nicht wenn er außerhalb des Bereichs liegt. Und natürlich müssen Sie es in eine Methode setzen, wo sonst? :) – RelativeGames

+1

Sobald die Methode ausgeführt wird, fällt der Verweis auf KeepScreenOnRequest auf Null, da es sich um eine lokale Variable handelt, die in der Methode deklariert wurde. – Hong