Окно некорректно разворачивается(WindowState.Maximized) C# WPF
<Window x:Class="DatingClient.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:DatingClient"
mc:Ignorable="d"
Title="MainWindow"
Height="450"
MinHeight="450"
Width="800"
MinWidth="800"
WindowStyle="None"
ResizeMode="CanResize"
FontFamily="Fonts/#Montserrat">
<WindowChrome.WindowChrome>
<WindowChrome CaptionHeight="0"/>
</WindowChrome.WindowChrome>
Вся проблема в том, что при разворачивании(максимизации) с помощью WindowState.Maximized Кусочек верхней панели с заголовком и кнопками уходит за границы экрана. На скриншоте ниже видно, что где-то 10 пикселей за экран уходит, что делать?

Ответы (1 шт):
Автор решения: VladD
→ Ссылка
Это известный эффект, и, кажется, даже документированный. Рассчитывайте на него, и компенсируйте сдвиги.
Например, можно сделать через стиль:
<Style TargetType="{x:Type Window}" x:Key="ModifiedWindow">
<Setter Property="WindowChrome.WindowChrome">
<Setter.Value>
<!-- тут WindowChrome для нормального случая -->
<WindowChrome .../>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="WindowState" Value="Maximized">
<Setter Property="WindowChrome.WindowChrome">
<Setter.Value>
<!-- тут WindowChrome для максимизированного окна -->
<WindowChrome .../>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
Если вы не хотите менять WindowChrome, можно в триггере сделать повыше верхний элемент окна.
Информация и длинное обсуждение есть, например, тут.
