Ich verwende WindowChrome, um ein Fenster anzupassen. Wenn ich das Fenster maximiere, sind die Ränder außerhalb des Bildschirms. Ich verwende den folgenden Code, dies zu beheben:WPF WindowChrome: Ränder des maximierten Fensters sind außerhalb des Bildschirms
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<WindowChrome.WindowChrome>
<WindowChrome CaptionHeight="50" CornerRadius="0" GlassFrameThickness="0" NonClientFrameEdges="None" ResizeBorderThickness="5" UseAeroCaptionButtons="False" />
</WindowChrome.WindowChrome>
<Grid>
<Grid.Style>
<Style TargetType="{x:Type Grid}">
<Setter Property="Margin" Value="0" />
<Style.Triggers>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}, Path=WindowState}" Value="Maximized">
<Setter Property="Margin" Value="{x:Static SystemParameters.WindowResizeBorderThickness}" />
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Style>
<Border BorderThickness="2" BorderBrush="Blue" Background="Yellow" />
</Grid>
</Window>
Mein Problem: Wie kann ich die richtige Anzahl von Pixeln erhalten, so dass die Kanten nicht aus dem Bildschirm sind.
SystemParameters.WindowResizeBorderThickness enthält nicht den richtigen Wert.
Und wie bekomme ich die richtige Anzahl von Pixeln? – Pearson
Dies könnte hilfreich sein: http://stackoverflow.com/a/24818071/7277579 – Julian