Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 2 Min.

WPF: Fenster ohne Fensterrahmen

Soll das Anwendungsfenster anders als gewöhnlich aussehen, stört der für Windows typische Fensterrahmen. Den kann man ganz einfach weglassen.
Startet man die Arbeit an einer neuen WPF-Desktop-Anwendung, so gibt Visual Studio den folgenden XAML-Code vor, welcher ein ganz normales Fenster mit dem üblichen Rahmen erzeugt:
<Window x:Class="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:Test"
  mc:Ignorable="d"
  Title="MainWindow" Height="450" Width="800">

  <Grid>
  </Grid>
</Window> 
Um den Rahmen zu entfernen muss die folgende Zeile hinzugefügt werden:
AllowsTransparency="True" WindowStyle="None" 
Das resultierende Fenster hat keinen Rahmen mehr, allerdings kann man es auch nicht mehr mit der Maus verschieben, auch das Vergrößern und Verkleinern klappt nicht mehr. Dafür braucht es jedoch auch nur eine kleine Erweiterung, so dass der Code dann beispielsweise so aussieht:
<Window x:Class="MainWindow"
  ...
  Title="MainWindow" Height="850" Width="1220"
  AllowsTransparency="True" WindowStyle="None"
  >

  <!-- sorgt dafür, dass man das Fenster per Maus
  vergrößern/verkleinern/verschieben kann -->
  <WindowChrome.WindowChrome>
    <WindowChrome />
  </WindowChrome.WindowChrome>
  ...
</Window> 
Jetzt fehlen nur noch ein paar Steuerelemente, um den Nutzer zu erlauben, das Fenster zu minimieren (Me.WindowState = WindowState.Minimized) oder zu schließen (Me.Close).
Miscellaneous

Neueste Beiträge

Die Kunst der langen Aufgabenläufe - Kimi K3 – das Modell hinter dem Agenten, Teil 2
Ein guter Code-Generator löst eine klar umrissene Funktion. Ein Coding-Agent muss dagegen ein Repository erkunden, Hypothesen bilden, Werkzeuge auswählen, Tests auswerten und nach Fehlschlägen den Kurs ändern. Kimi K3 zielt auf diese zweite Klasse von Aufgaben.
8 Minuten
Zwei Konferenz-Openings, eine Sprecherin – wie aus einem Terminkonflikt ein KI-Usecase wurde - Making-of eines Avatars mit HeyGen und ElevenLabs
Ein Terminkonflikt gelöst von einem digitalen Zwilling. Die Ebner Media Group hat die erste Infinite AI Conference von einem Avatar eröffnen lassen. Ein Erfahrungsbericht über den Produktionsprozess und den echten Nutzen synthetischer Präsenz.
7 Minuten
12. Aug 2026
MessagePack: JSON als Binär-Image - Best of NuGet, Teil 10
Das Serialisierungsformat MessagePack wurde – anders als JSON – konsequent auf die Bedürfnisse von Maschinen und damit auch auf höchstmögliche Kompaktheit optimiert. Der Vorteil: Ein geringeres zu übertragendes Datenvolumen führt vor allem in IoT-nahen Anwendungen direkt zu geringeren Kosten.
6 Minuten
17. Aug 2026

Das könnte Dich auch interessieren

Das Firmata-Protokoll für einfache Mess- und Steuerungsaufgaben - Best of NuGet, Teil 8
Wer kleinere Mess-, Steuerungs- und Regeltechnik-Aufgaben aus .NET heraus abwickeln möchte, kommt mit einem preiswerten und mit Firmata-Software ausgestatteten Arduino meist problemlos ans Ziel.
7 Minuten
27. Jul 2026
.NET-Color-Picker für WPF- und Avalonia-Applikationen - Best of NuGet, Teil 7
Mit PixiEditor.ColorPicker steht eine Bibliothek in den Startlöchern, die Entwicklern von Desktop-zentrierten Applikationen verschiedene hochwertige Farbauswahldialoge zur Verfügung stellt.
6 Minuten
20. Jul 2026
Wiederholend wie ein Papagei: Polly - Best of NuGet, Teil 8
Viele Probleme der Systemtechnik lassen sich durch wiederholtes Versuchen oder durch Rate Limiting lösen. Die .NET-Bibliothek Polly stellt Entwicklern hierfür verschiedenste Maßnahmen zur Resilienz-Steigerung in Form von schlüsselfertigen Bausteinen zur Verfügung.
6 Minuten
10. Aug 2026
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige