<Window x:Class="NonRectangularWindowSample.NonRectangularWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="NonRectangularWindowSample" SizeToContent="WidthAndHeight" MouseLeftButtonDown="NonRectangularWindow_MouseLeftButtonDown" WindowStyle="None" AllowsTransparency="True" Background="Transparent"> <Canvas Width="200" Height="200" > <Path Stroke="DarkGray" StrokeThickness="2"> <Path.Fill> <LinearGradientBrush StartPoint="0.2,0" EndPoint="0.8,1" > <GradientStop Color="White" Offset="0"></GradientStop> <GradientStop Color="Red" Offset="0.45"></GradientStop> <GradientStop Color="LightBlue" Offset="0.9"></GradientStop> <GradientStop Color="Gray" Offset="1"></GradientStop> </LinearGradientBrush> </Path.Fill> <Path.Data> <PathGeometry> <PathFigure StartPoint="40,20" IsClosed="True"> <LineSegment Point="160,20"></LineSegment> <ArcSegment Point="180,40" Size="20,20" SweepDirection="Clockwise"></ArcSegment> <LineSegment Point="180,80"></LineSegment> <ArcSegment Point="160,100" Size="20,20" SweepDirection="Clockwise"></ArcSegment> <LineSegment Point="90,100"></LineSegment> <ArcSegment Point="20,80" Size="20,20" SweepDirection="Clockwise"></ArcSegment> <LineSegment Point="20,40"></LineSegment> <ArcSegment Point="40,20" Size="20,20" SweepDirection="Clockwise"></ArcSegment> </PathFigure> </PathGeometry> </Path.Data> </Path> <Label Width="200" Height="120" FontSize="15" HorizontalContentAlignment="Center" VerticalContentAlignment="Center">Drag Me</Label> <Button Canvas.Left="155" Canvas.Top="30" Click="closeButtonRectangle_Click"> <Button.Template> <ControlTemplate> <Canvas> <Rectangle Width="15" Height="15" Stroke="Black" RadiusX="3" RadiusY="3"> <Rectangle.Fill> <SolidColorBrush x:Name="myAnimatedBrush" Color="Red" /> </Rectangle.Fill> </Rectangle> <Line X1="3" Y1="3" X2="12" Y2="12" Stroke="White" StrokeThickness="2"></Line> <Line X1="12" Y1="3" X2="3" Y2="12" Stroke="White" StrokeThickness="2"></Line> </Canvas> </ControlTemplate> </Button.Template> </Button> </Canvas> </Window> //File:Window.xaml.cs using System; using System.Windows; using System.Windows.Input; namespace NonRectangularWindowSample { public partial class NonRectangularWindow : Window { public NonRectangularWindow() { InitializeComponent(); } void NonRectangularWindow_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { this.DragMove(); } void closeButtonRectangle_Click(object sender, RoutedEventArgs e) { this.Close(); } } }