Vollbild in der WPF-Anwendung

93

Ich entwickle eine WPF-Anwendung, die im Vollbildmodus angezeigt wird. Darüber hinaus sollte die Anwendung auf vielen Tablets mit mehreren Dimensionen funktionieren. Ich möchte, dass meine Anwendung unabhängig von ihren Abmessungen im Vollbildmodus ausgeführt wird.

Was ist die beste Vorgehensweise, um diese Aufgabe zu erfüllen?

Lamloumi Afif
quelle

Antworten:

180

Stellen Sie einfach das WindowStateauf Maximizedund das WindowStyleauf ein None.

Thomas Levesque
quelle
6
Wenn Sie das Fenster als oberstes Fenster einstellen, wird sichergestellt, dass kein anderes Fenster über Ihrem Fenster angezeigt wird.
Yash Gadhiya
8
@ YashGadhiya Was du niemals tun solltest.
Glenn Maynard
7
@LucasCordina Wenn Sie eine Kiosk-App sind und andere Anwendungen davon abhalten möchten, sich zu konzentrieren, ist es nicht die Lösung, sich ganz oben zu platzieren. Topmost macht Sie nur ganz oben - wenn es noch etwas gibt, das den Fokus übernehmen kann, wird es immer noch so sein, dass Sie es einfach nicht sehen können.
Glenn Maynard
8
(Und für den Fall, dass es nicht offensichtlich ist, ist Yashs blinde Empfehlung "auch Topmost setzen" sehr schlecht, denn wenn eine typische Anwendung, die versucht, Vollbild zu verwenden, dies tut, erhalten Sie eine dieser kaputten Vollbildanwendungen, die Sie blind und blind macht Ich weiß nicht, warum Windows das überhaupt zulässt - keine Anwendung sollte jemals in der Lage sein, den Desktop so stark zu beschädigen.)
Glenn Maynard
6
Wir arbeiten an Software, die für die Verwendung in einem Krankenhaus für einen bestimmten Zweck auf einer dedizierten Maschine entwickelt wurde. Der Benutzer sollte aus irgendeinem Grund niemals in der Lage sein, Alt-Tab in ein neues Fenster zu wechseln. Es gibt also Kontexte, in denen Topmost die bevorzugte Option ist.
Julian Gold
42

Setzen Sie den WindowStyle auf None und den WindowState auf Maximized. Dies kann folgendermaßen geschehen:

WindowState = WindowState.Maximized;
WindowStyle = WindowStyle.None;

Oder in xaml:

<Window x:Class="FullScreenApplication.Window"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Full Screen WPF"
    WindowState="Maximized"
    WindowStyle="None">

Und klicken Sie einfach auf ALT-TAB, um aus Ihrem Vollbild-Wpf zu entkommen. Sie können zwischen anderen Anwendungen wechseln.

Kurt Van den Branden
quelle
2
Eigentlich scheint das die falsche Reihenfolge zu sein . Wenn Sie zuerst den Stil maximieren und dann wechseln, kann die sichtbare Taskleiste angezeigt werden. Dieses Problem scheint nicht vorhanden zu sein, wenn Sie WindowStyle.Nonezuerst und WindowState.Maximizeddanach sind.
Wondra
@KurtVandenBranden Das Hinzufügen der Verwendung von ALT-TABin Ihrer Antwort war sehr hilfreich.
Nam
-1

Es ist der einfachste Weg:

<Window x:Class="ProjectName.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:ProjectName"
        mc:Ignorable="d"
        WindowState="Maximized"
        WindowStyle="None"
        Title="Project Name">
    <Grid>
    
    </Grid>
</Window>
Arian
quelle