Comment faire pour faire disparaître la barre de titre dans la fenêtre WPF?

je sais que cela a déjà été demandé, mais j'ai essayé des réponses:

  • comment créer une fenêtre WPF sans bordure qui peut être redimensionnée via une poignée seulement?
  • comment supprimer la barre de titre d'une fenêtre mais garder la frontière

et ni l'un ni l'autre ne fonctionne, le texte de la barre de titre est assis là et je ne peux pas déplacer ma grille jusqu'au haut de la fenêtre de sorte que la grille prend la totalité de la fenêtre. Je suis coincé sur cette.

le XAML de La fenêtre :

<Window x:Class="PlayWPF.TimerSlideWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="" Height="95" Width="641" WindowStyle="None" 
    ResizeMode="CanResize" AllowsTransparency="False">
   <Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
       <Slider Height="42" HorizontalAlignment="Left" Margin="10,14,0,0" 
               Name="sldTime" VerticalAlignment="Top" Width="495" />
       <TextBox FontSize="18" Height="29" HorizontalAlignment="Left" 
                Margin="510,10,0,0" Name="txtTime" Text="00:00:00" 
                TextAlignment="Center" VerticalAlignment="Top" Width="93" />
   </Grid>
</Window>
28
demandé sur ASh 2013-03-14 19:20:48

3 réponses

Vous devez définir le WindowStyle à la propriété None , comme je l'ai indiqué dans cette réponse

<Window ...
    WindowStyle="None"
    WindowState="Maximized"
    WindowStartupLocation="CenterScreen">

vous pouvez également définir AllowsTransparency="True" et Background="Transparent" si vous souhaitez cacher le cadre de la fenêtre entière et construire votre propre.

mise à jour basée sur le code ajouté à la question

le code que vous venez de poster fonctionne très bien pour moi. Il n'y a pas de barre de titre, bien qu'il y ait un Resize border parce que vous avez spécifié ResizeMode="CanResize"

vous avez quelques espaces blancs en haut de votre fenêtre, mais c'est parce que vous avez spécifié une marge supérieure pour votre Slider et TextBox (lorsque vous spécifiez une marge avec 4 Nombres, il va à gauche, en haut, à droite, en bas donc le 2ème nombre est votre marge supérieure)

63
répondu Rachel 2017-05-23 11:55:03
<Window x:Class="BorderlessWindow.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525"
        WindowStyle="None"
        BorderBrush="Black"
        BorderThickness="5"
        AllowsTransparency="True"
        >
    <Grid>
        <TextBlock Text="Title Less Window" HorizontalAlignment="Center" FontSize="15" Margin="10" />
    </Grid>
</Window>

Le code ci-dessus fonctionne très bien pour votre question "Comment faire pour que la barre de titre pour disparaître dans la fenêtre WPF?"

9
répondu isakavis 2013-03-14 15:38:29

je pense que vous devriez jouer avec ShowTitleBar=" False " et de retour n'importe où dans votre application, soit dans le fichier Xaml ou dans le code derrière. Cela devrait faire l'affaire

-1
répondu olammy 2017-07-19 12:04:50