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?

Antworten:


180

Stellen Sie einfach das WindowStateauf Maximizedund das WindowStyleauf ein None.


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.


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>
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.