<UserControl x:Class="ShiftOS.Wpf.WpfWindowBorder" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:local="clr-namespace:ShiftOS.Wpf" mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="300"> <DockPanel> <Grid DockPanel.Dock="Top" x:Name="titlemaster" Height="30" HorizontalAlignment="Stretch" VerticalAlignment="Top"> <Canvas x:Name="titleleft" HorizontalAlignment="Left" Background="Gray" Width="2"></Canvas> <Canvas MouseLeftButtonUp="titlebar_MouseLeftButtonUp" MouseLeftButtonDown="titlebar_MouseLeftButtonDown" MouseMove="titlebar_MouseDown" x:Name="titlebar" HorizontalAlignment="Stretch" Background="Gray"> <TextBlock MouseLeftButtonUp="titlebar_MouseLeftButtonUp" MouseLeftButtonDown="titlebar_MouseLeftButtonDown" MouseMove="titlebar_MouseDown" x:Name="titletext" VerticalAlignment="Center" Foreground="White" Height="Auto" HorizontalAlignment="Stretch" FontFamily="Tahoma" FontSize="18">This is a title.</TextBlock> <Button Width="24" Height="24" x:Name="close" Click="close_Click" Background="Red" Canvas.Left="266" Canvas.Top="6"/> <Button Width="24" Height="24" x:Name="max" Click="max_Click" Background="green" Canvas.Left="239" Canvas.Top="4" RenderTransformOrigin="0.5,0.5"> </Button> <Button Width="24" Height="24" x:Name="min" Click="min_Click" Background="yellow" Canvas.Left="212" Canvas.Top="3"/> </Canvas> <Canvas x:Name="titleright" HorizontalAlignment="Right" Background="Gray" Width="2"></Canvas> </Grid> <DockPanel x:Name="bottommaster" DockPanel.Dock="Bottom" Height="2" HorizontalAlignment="Stretch"> <Canvas DockPanel.Dock="Left" x:Name="borderbottoml" HorizontalAlignment="Left" Background="Red" Width="2"> </Canvas> <Canvas DockPanel.Dock="Right" x:Name="borderbottomr" HorizontalAlignment="Right" Background="Red" Width="2" Grid.Column="1"> </Canvas> <Canvas x:Name="borderbottom" Background="Red" HorizontalAlignment="Stretch" Grid.ColumnSpan="2"> </Canvas> </DockPanel> <DockPanel Height="Auto" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"> <Canvas DockPanel.Dock="Left" x:Name="borderleft" HorizontalAlignment="Left" Background="Red" Width="2"> </Canvas> <Canvas DockPanel.Dock="Right" x:Name="borderright" HorizontalAlignment="Right" Background="Red" Width="2"> </Canvas> <UserControl x:Name="pgcontents" Background="White" HorizontalAlignment="Stretch"> </UserControl> </DockPanel> </DockPanel> <UserControl.Resources> <!-- This style is used for buttons, to remove the WPF default 'animated' mouse over effect --> <Style TargetType="Button"> <Setter Property="OverridesDefaultStyle" Value="True"/> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="Button"> <Border Name="border" BorderThickness="0" Padding="4,2" BorderBrush="DarkGray" CornerRadius="3" Background="{TemplateBinding Background}"> <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" /> </Border> <ControlTemplate.Triggers> <Trigger Property="IsMouseOver" Value="True"> <Setter TargetName="border" Property="BorderBrush" Value="Black" /> </Trigger> </ControlTemplate.Triggers> </ControlTemplate> </Setter.Value> </Setter> </Style> </UserControl.Resources> </UserControl>