如何自定义窗口标题Extended,Gradient

时间:2013-04-09 08:15:57

标签: .net wpf visual-studio-2010 wpf-controls

i have to make window appearance like below image

Window x:Class="WPF_UI.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Mian Window" WindowStyle="None" AllowsTransparency="True" Width="775" Height="500"

我已经自定义了我的窗口标题Extended,Gradient.How应该在wpf中。

我必须使窗口外观像abv图像

1 个答案:

答案 0 :(得分:1)

尝试使用覆盖窗口倾斜栏上的堆栈面板。 Make WindowStyle =“None”ResizeMode =“NoResize”AND 调整控件边距(MAKE TOP NEGATIVE OF STACKPANEL)覆盖标题栏上的窗口堆栈面板。

<Window x:Class="WPF_UI.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
       WindowStyle="None" WindowStartupLocation="CenterScreen" ResizeMode="NoResize"  Width="920" Height="600" >

<Grid>....other stack panels....
**Here i have take stack panel to overwrite on window title bar.**
<StackPanel Margin="0,-566,0,5" Grid.ColumnSpan="3" Height="25" DataContext="{Binding}">
                <StackPanel.Background>
                    <LinearGradientBrush>
                        <GradientStop Color="White" Offset=".2" />
                        <GradientStop Color="Gray" Offset=".5" />
                        <GradientStop Color="Black" Offset="1" />
                    </LinearGradientBrush>
                </StackPanel.Background>
                <TextBlock HorizontalAlignment="Left" VerticalAlignment="Center" Margin="1,5,0,0"> APPLICATION NAME
                </TextBlock>
                <Button Content="Close" Margin="860,-17,0,0" VerticalAlignment="Center" HorizontalAlignment="Left" Name="btnClose" Width="40" >
                    <Button.Background>
                        <LinearGradientBrush StartPoint="0,0" EndPoint="0,2">
                            <GradientStop Color="Black" Offset=".2" />
                            <GradientStop Color="Gray" Offset=".5" />
                            <GradientStop Color="White" Offset="1" />
                        </LinearGradientBrush>
                    </Button.Background>
                </Button>
            </StackPanel>
</Grid>