WPF teknolojisinde form biçim ve düzenlerini de değiştirmemiz mümkündür. Örneğin şekilli bir pencere yapalım.
Bunun için yapacağımız örnek için de Project menüsünden Add Window diyerek yeni pencere ekleyelim ve ana penceremiz içerisine bir buton ekleyerek şu kodu yazalım:
Class Window1
Private Sub cmdyenipencere_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles cmdyenipencere.Click
Dim yenipencere As New Window2
yenipencere.Show()
End Sub
End Class
Window2 seçili iken properties penceresinden şu değişiklikleri yapalım:
WindowsStyle özelliğini None yaparak pencere üzerindeki tam ekran yapma, ekranı kaplama ve simge durumuna küçültme düğmelerinin temizlenmesini sağlayalım.
AllowsTransparency özelliğini true yaparak penceremizin saydam hale gelmesini sağlayalım.
Daha sonra projemize formumuzun şeklini belirleyecek herhangi bir resim dosyasını Add>New Item seçenekleri ile ekleyerek projemize dâhil edelim.
Window2’nin XAML kod penceresine eklediğimiz resmin formun zemini hale gelmesini sağlamak için şu kodu ekleyelim:
<Window.Background>
<ImageBrush ImageSource="10.png"></ImageBrush>
</Window.Background>
Ayrıca Window2 üzerine de bir buton ekleyelim. Butonumuza basıldığında pencereyi kapatsın. Kodu şu şekilde olacak:
Private Sub cmdgeri_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles cmdgeri.Click
Me.Close()
End Sub
Sonuç olarak Window2’nin tüm XAML kodu şu şekilde olacak:
<Window x:Class="Window2"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window2" Height="300" Width="300" WindowStyle="None" AllowsTransparency="True">
<Window.Background>
<ImageBrush ImageSource="10.png"></ImageBrush>
</Window.Background>
<Grid>
<Button Margin="99,116,104,123" Name="cmdgeri" Background="Yellow">Geri</Button>
</Grid>
</Window>
VB.NET kodu ise şu şekilde:
Partial Public Class Window2
Private Sub cmdgeri_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles cmdgeri.Click
Me.Close()
End Sub
End Class
Projemizi çalıştırıp pencere1’den pencere2’yi çağırdığımızda pencere2’nin şu şekilde olduğunu görürüz:
