Подтвердить что ты не робот

Как удалить белую полосу поверх окна WPF с помощью WindowStyle = Нет?

Можно ли удалить белую полосу поверх окна WPF с помощью Window Style = None. XAML и Window показаны на скриншоте:

введите описание изображения здесь

4b9b3361

Ответ 1

То, что вы видите в белом, это граница размера. Вы можете удалить это и по-прежнему изменить размер окна, установив ResizeMode="CanResizeWithGrip" AllowsTransparency="True"

Если вы вообще не хотите изменять размер, сделайте это - ResizeMode="NoResize", снова вы не увидите границу, но вы не можете изменить размер.

<Window x:Class="HandsOnSolution.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" Background="Green" WindowStyle="None" ResizeMode="CanResizeWithGrip" AllowsTransparency="True">
    <Grid>
    </Grid>
</Window>

Edit

Хорошая точка от @devuxer, если вы заинтересованы в перетаскивании, вы можете добавить этот кусок кода в окно мыши вниз событие

<Window MouseLeftButtonDown="Window_MouseLeftButtonDown"/>

//code behind
private void Window_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
    DragMove();
}

Ответ 2

Я искал решение в течение нескольких дней, простыми словами, эта ссылка содержала ответ на мои вопросы.

хотя фрагмент кода, который сделал волшебство, был:

<Setter Property="WindowChrome.WindowChrome">
    <Setter.Value>
        <WindowChrome CaptionHeight="0"
            CornerRadius="2"
            GlassFrameThickness="0"
            NonClientFrameEdges="None"
            ResizeBorderThickness="3"/>
    </Setter.Value>
</Setter>

Я только что добавил вышеуказанный установщик свойства в пользовательский стиль окна.

Надеюсь, что помогло :)

Ответ 3

да, это помогает, после этого добавлено, белая рамка в голове исчезла. СПАСИБО!

Ответ 4

Я добавил этот кусок кода:

<WindowChrome.WindowChrome>
    <WindowChrome GlassFrameThickness="0,0,0,1" CornerRadius="0" />
</WindowChrome.WindowChrome>

внутри <Window> paste here <Window/> и это помогло :)