Transparent Window : Window Style « Windows Presentation Foundation « VB.Net Tutorial






<Window x:Class="Windows.ModernWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="ModernWindow" Height="300" Width="300"
        AllowsTransparency="True" Background="Transparent"
        WindowStyle="None" ResizeMode="CanResizeWithGrip">
   <Border Width="Auto" Height="Auto" Name="windowFrame"
          BorderBrush="#395984"
          BorderThickness="1"
          CornerRadius="0,20,30,40" >
    <Border.Background>
      <LinearGradientBrush >
        <GradientBrush.GradientStops>
          <GradientStopCollection>
            <GradientStop Color="#E7EBF7" Offset="0.0"/>
            <GradientStop Color="#CEE3FF" Offset="0.5"/>
  
          </GradientStopCollection>
        </GradientBrush.GradientStops>
      </LinearGradientBrush>
    </Border.Background>
    <StackPanel>
      <TextBlock Text="Title Bar" Margin="1" Padding="5" MouseLeftButtonDown="titleBar_MouseLeftButtonDown"></TextBlock>
      <Button Click="cmdClose_Click">Close</Button>
      <Rectangle Cursor="SizeWE" 
                 MouseLeftButtonDown="window_initiateWiden"
                 MouseLeftButtonUp="window_endWiden"
                 MouseMove="window_Widen"/>

      </StackPanel>
    
    
  </Border>
</Window>

//File:Window.xaml.vb

Imports System
Imports System.Collections.Generic
Imports System.Text
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Data
Imports System.Windows.Documents
Imports System.Windows.Input
Imports System.Windows.Media
Imports System.Windows.Media.Imaging
Imports System.Windows.Shapes

Namespace Windows
  Public Partial Class ModernWindow
    Inherits System.Windows.Window
    Public Sub New()
      InitializeComponent()
    End Sub

    Private isWiden As Boolean = False
    Private Sub window_initiateWiden(sender As Object, e As System.Windows.Input.MouseEventArgs)
      isWiden = True
    End Sub
    Private Sub window_endWiden(sender As Object, e As System.Windows.Input.MouseEventArgs)
      isWiden = False

      Dim rect As Rectangle = DirectCast(sender, Rectangle)
      rect.ReleaseMouseCapture()
    End Sub

    Private Sub window_Widen(sender As Object, e As System.Windows.Input.MouseEventArgs)
      Dim rect As Rectangle = DirectCast(sender, Rectangle)
      If isWiden Then
        rect.CaptureMouse()
        Dim newWidth As Double = e.GetPosition(Me).X + 5
        If newWidth > 0 Then
          Me.Width = newWidth
        End If
      End If
    End Sub

    Private Sub titleBar_MouseLeftButtonDown(sender As Object, e As MouseButtonEventArgs)
      Me.DragMove()
    End Sub

    Private Sub cmdClose_Click(sender As Object, e As RoutedEventArgs)
      Me.Close()
    End Sub
  End Class
End Namespace
WPF Transparent Window








16.59.Window Style
16.59.1.Change window cursorChange window cursor
16.59.2.Non-Rectangular windowNon-Rectangular window
16.59.3.Transparent WindowTransparent Window
16.59.4.Create a non-rectangular windowCreate a non-rectangular window
16.59.5.Windows Transparent BackgroundWindows Transparent Background