解决方法
据我记得(4年以前),您可以创建一个使用WPF窗口的样式.
这是样例窗口样式:
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <Style x:Key="MainWindow" TargetType="{x:Type Window}"> <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.WindowTextBrushKey}}" /> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type Window}"> <Grid> <Border x:Name="MainBorder" BorderBrush="{DynamicResource MainWindowBorderBrush}" BorderThickness="1" CornerRadius="2" Background="{DynamicResource MainWindowBackgroundBrush}"> <DockPanel LastChildFill="True"> <Rectangle x:Name="PART_LEFT_BORDER" Width="2" Cursor="SizeWE"> <Rectangle.Fill> <SolidColorBrush Color="Transparent" /> </Rectangle.Fill> </Rectangle> <Rectangle x:Name="PART_RIGHT_BORDER" Cursor="SizeWE" Width="2" DockPanel.Dock="Right"> <Rectangle.Fill> <SolidColorBrush Color="Transparent" /> </Rectangle.Fill> </Rectangle> <Rectangle x:Name="PART_TOP_BORDER" Cursor="SizeNS" DockPanel.Dock="Top" Height="2"> <Rectangle.Fill> <SolidColorBrush Color="Transparent" /> </Rectangle.Fill> </Rectangle> <Rectangle x:Name="PART_BOTTOM_BORDER" Cursor="SizeNS" Height="2" DockPanel.Dock="Bottom"> <Rectangle.Fill> <SolidColorBrush Color="Transparent" /> </Rectangle.Fill> </Rectangle> <Border x:Name="PART_TITLEBAR" Margin="2,2,2" Height="40" DockPanel.Dock="Top" CornerRadius="2" Background="Transparent"> <DockPanel LastChildFill="False"> <TextBlock Margin="8,4" VerticalAlignment="Center" FontStretch="UltraExpanded" Foreground="Black" TextTrimming="CharacterEllipsis" TextWrapping="NoWrap" Text="{TemplateBinding Title}" FontSize="16" /> <Button x:Name="PART_CLOSE" DockPanel.Dock="Right" Style="{DynamicResource FlatButton}" VerticalAlignment="Center" Margin="0,4,0"> <Image Source="/MixModes.Synergy.Resources; component/Resources/Close.png" Stretch="None" Margin="4" /> </Button> <Button x:Name="PART_MAXIMIZE_RESTORE" DockPanel.Dock="Right" HorizontalAlignment="Center" VerticalAlignment="Center" Style="{DynamicResource FlatButton}"> <Image x:Name="MaximizeRestoreImage" Source="/MixModes.Synergy.Resources; component/Resources/Restore.png" Stretch="None" Margin="4" /> </Button> <Button x:Name="PART_MINIMIZE" HorizontalAlignment="Center" Style="{DynamicResource FlatButton}" VerticalAlignment="Center" DockPanel.Dock="Right"> <Image Margin="4" Source="/MixModes.Synergy. Resources;component/Resources/ Minimize.png" Stretch="None" /> </Button> </DockPanel> </Border> <!-- Title bar separator--> <Border Height="1" DockPanel.Dock="Top" Background="{DynamicResource MainWindowTitleBarSeparator}" /> <!-- Actual Window Content --> <AdornerDecorator DockPanel.Dock="Bottom"> <ContentPresenter /> </AdornerDecorator> </DockPanel> </Border> </Grid> <ControlTemplate.Triggers> <DataTrigger Binding="{Binding RelativeSource= {RelativeSource Self},Path=Maximized}" Value="False"> <Setter TargetName="MaximizeRestoreImage" Property="Source" Value="/MixModes.Synergy.Resources; component/Resources/Maximize.png" /> </DataTrigger> </ControlTemplate.Triggers> </ControlTemplate> </Setter.Value> </Setter> </Style> </ResourceDictionary>
结果将如下所示: