Saya mencoba membuat jendela tanpa bingkai dengan WindowStyle="None"
tetapi ketika saya mengujinya, tampaknya muncul bilah putih di bagian atas, setelah beberapa penelitian tampaknya menjadi "Ubah ukuran bingkai", berikut adalah gambar (saya berkomentar dengan warna kuning):
Setelah beberapa penelitian melalui internet, dan banyak solusi non xaml yang sulit, semua solusi yang saya temukan adalah kode di belakang dalam C # dan banyak baris kode, saya menemukan secara tidak langsung solusinya di sini: Jendela kustom maksimum kehilangan efek bayangan drop
<WindowChrome.WindowChrome>
<WindowChrome
CaptionHeight="0"
ResizeBorderThickness="5" />
</WindowChrome.WindowChrome>
Catatan : Anda perlu menggunakan kerangka kerja .NET 4.5, atau jika Anda menggunakan versi yang lebih lama gunakan WPFShell, cukup rujuk shell dan gunakan Shell:WindowChrome.WindowChrome
sebagai gantinya.
Saya menggunakan WindowChrome
properti Window, jika Anda menggunakan ini, "batas ubah ukuran" putih menghilang, tetapi Anda perlu menentukan beberapa properti untuk bekerja dengan benar.
CaptionHeight: Ini adalah ketinggian area teks (headerbar) yang memungkinkan Aero snap, perilaku klik ganda seperti yang dilakukan bilah judul normal. Setel ini ke 0 (nol) untuk membuat tombol berfungsi.
ResizeBorderThickness: Ini adalah ketebalan di tepi jendela tempat Anda dapat mengubah ukuran jendela. Saya menempatkan 5 karena saya suka angka itu, dan karena jika Anda meletakkan nol sulit untuk mengubah ukuran jendela.
Setelah menggunakan kode singkat ini hasilnya adalah:
Dan sekarang, batas putih menghilang tanpa menggunakan ResizeMode="NoResize"
dan AllowsTransparency="True"
, juga itu menunjukkan bayangan di jendela.
Nanti saya akan menjelaskan cara membuat tombol bekerja (saya tidak menggunakan gambar untuk tombol) dengan mudah dengan kode yang sederhana dan pendek, saya baru dan saya pikir saya dapat memposting ke codeproject, karena di sini saya tidak menemukan tempatnya untuk memposting tutorial.
Mungkin ada solusi lain (saya tahu bahwa ada solusi yang sulit dan sulit untuk pemula seperti saya) tetapi ini berfungsi untuk proyek pribadi saya.
Ini kode lengkapnya
<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:Concursos"
mc:Ignorable="d"
Title="Concuros" Height="350" Width="525"
WindowStyle="None"
WindowState="Normal"
ResizeMode="CanResize"
>
<WindowChrome.WindowChrome>
<WindowChrome
CaptionHeight="0"
ResizeBorderThickness="5" />
</WindowChrome.WindowChrome>
<Grid>
<Rectangle Fill="#D53736" HorizontalAlignment="Stretch" Height="35" VerticalAlignment="Top" PreviewMouseDown="Rectangle_PreviewMouseDown" />
<Button x:Name="Btnclose" Content="r" HorizontalAlignment="Right" VerticalAlignment="Top" Width="35" Height="35" Style="{StaticResource TempBTNclose}"/>
<Button x:Name="Btnmax" Content="2" HorizontalAlignment="Right" VerticalAlignment="Top" Margin="0,0,35,0" Width="35" Height="35" Style="{StaticResource TempBTNclose}"/>
<Button x:Name="Btnmin" Content="0" HorizontalAlignment="Right" VerticalAlignment="Top" Margin="0,0,70,0" Width="35" Height="35" Style="{StaticResource TempBTNclose}"/>
</Grid>
Terima kasih!