WPF常用控件样式集锦

1、不规则形状按钮(通过更改path实现)

        <Style x:Key="ButtonStyleForPath" TargetType="{x:Type Button}">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type Button}">
                        <Grid x:Name="grid" RenderTransformOrigin="0.5,0.5">
                            <Grid.RenderTransform>
                                <TransformGroup>
                                    <ScaleTransform/>
                                    <SkewTransform/>
                                    <RotateTransform/>
                                    <TranslateTransform/>
                                </TransformGroup>
                            </Grid.RenderTransform>
                            <Path Name="BtnShape"  Stretch="Uniform" Fill="#FF0C96DF" >
                                <Path.Data>
                                    <PathGeometry FillRule="Nonzero" Figures="M35.953125,28.1245803833008L100.359375,64.9214553833008 35.953125,101.718330383301 35.953125,28.1245803833008z" />
                                </Path.Data>
                            </Path> 
                            <ContentPresenter x:Name="contentPresenter" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Content=""/>
                        </Grid>
                        <ControlTemplate.Triggers>
                            <Trigger Property="IsFocused" Value="True"/>
                            <Trigger Property="IsDefaulted" Value="True"/>
                            <Trigger Property="IsMouseOver" Value="True">
                                <Setter Property="RenderTransform" TargetName="grid">
                                    <Setter.Value>
                                        <TransformGroup>
                                            <ScaleTransform ScaleX="1.05" ScaleY="1.05"/>
                                            <SkewTransform/>
                                            <RotateTransform/>
                                            <TranslateTransform/>
                                        </TransformGroup>
                                    </Setter.Value>
                                </Setter>
                            </Trigger>
                            <Trigger Property="IsPressed" Value="True">
                                <Setter Property="Fill" TargetName="BtnShape" Value="#FF00A7FF">
                                    <!--<Setter.Value>
                                        --><!--<RadialGradientBrush>
                                            <GradientStop Color="White" Offset="0"/>
                                            <GradientStop Color="#FF0C96DF" Offset="1"/>
                                        </RadialGradientBrush>--><!--
                                    </Setter.Value>-->
                                </Setter>
                            </Trigger>
                            <Trigger Property="IsEnabled" Value="False"/>
                        </ControlTemplate.Triggers>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
View Code

 

posted @ 2014-12-23 15:42  GavinJune  阅读(2219)  评论(0编辑  收藏  举报