WindowChrome is also useful.
http://blogs.msdn.com/b/wpfsdk/archive/2010/08/25/experiments-with-windowchrome.aspx contains some useful information.
For example, here is an example of MainWindow.xaml, which you can use as a starting point and clarify further.
<Window x:Class="WindowChromeTest.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:WindowChromeTest" mc:Ignorable="d" x:Name="_MainWindow" Title="MainWindow" Height="350" Width="525"> <WindowChrome.WindowChrome> <WindowChrome GlassFrameThickness="-1" ResizeBorderThickness="4" CaptionHeight="40"/> </WindowChrome.WindowChrome> <Window.Template> <ControlTemplate> <Grid> <Grid.RowDefinitions> <RowDefinition Height="30"/> <RowDefinition Height="1*"/> </Grid.RowDefinitions> <Border Grid.Row="0" Background="Wheat" Opacity="0.8"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="30" /> <ColumnDefinition Width="1*"/> </Grid.ColumnDefinitions> <Button Grid.Column="0" WindowChrome.IsHitTestVisibleInChrome="True" Command="{x:Static SystemCommands.ShowSystemMenuCommand}" CommandParameter="{Binding ElementName=_MainWindow}"> <Image Source="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Icon}" WindowChrome.IsHitTestVisibleInChrome="True"/> </Button> <TextBlock Grid.Column="1" TextAlignment="Center" VerticalAlignment="Center" Text="{Binding Title, RelativeSource={RelativeSource TemplatedParent}}" /> </Grid> </Border> <Border Grid.Row="1" Background="White" Opacity="0.5"> <ContentPresenter Content="{Binding Content, RelativeSource={RelativeSource TemplatedParent}}"/> </Border> </Grid> </ControlTemplate> </Window.Template> <Grid> <TextBox/> </Grid> </Window>
You will see a window that looks like this:

source share