生活随笔
收集整理的這篇文章主要介紹了
WPF ControlTemplate 仿QQ概念版CheckBox
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
QQ概念版是騰訊用WPF精心打造的創(chuàng)新型IM產(chǎn)品,界面做的自然是比較不錯(cuò),只不過實(shí)現(xiàn)的功能太少,并且對運(yùn)行的平臺限制太多(只能是Windows7),現(xiàn)在已經(jīng)沒什么消息了。
先貼圖:
控件選中后彈出的勾用圖片來代替,并有動(dòng)畫效果。
下面為CheckBox的Style代碼:
<Style TargetType="{x:Type CheckBox}"><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="CheckBox"><StackPanel Orientation="Horizontal"><Border BorderBrush="#0C202C" Background="Transparent"CornerRadius="3" BorderThickness="2"
Width="22" Height="22" ClipToBounds="False"><Image x:Name="checkImg" Source="images/check.png" Width="24" HorizontalAlignment="Center"VerticalAlignment="Center" RenderTransformOrigin="0.5,0.5"><Image.RenderTransform><TransformGroup><ScaleTransform ScaleX="0" ScaleY="0"/><RotateTransform Angle="0"/></TransformGroup></Image.RenderTransform></Image></Border><Border Padding="5,0,0,0"><ContentPresenter VerticalAlignment="Center" Content="{TemplateBinding Property=ContentControl.Content}"/></Border></StackPanel><ControlTemplate.Triggers><Trigger Property="CheckBox.IsChecked" Value="True"><Trigger.EnterActions><BeginStoryboard><Storyboard><DoubleAnimation Storyboard.TargetName="checkImg"Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX" To="2"
From="0" Duration="0:0:0.2" BeginTime="0:0:0"/><DoubleAnimation Storyboard.TargetName="checkImg"Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY" To="2" From="0" Duration="0:0:0.2" BeginTime="0:0:0"/><DoubleAnimation Storyboard.TargetName="checkImg"Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX" To="1.5" From="2" Duration="0:0:0.1" BeginTime="0:0:0.2"/><DoubleAnimation Storyboard.TargetName="checkImg"Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY" To="1.5" From="2" Duration="0:0:0.1" BeginTime="0:0:0.2"/><DoubleAnimation Storyboard.TargetName="checkImg"Storyboard.TargetProperty="RenderTransform.Children[1].Angle" To="30" From="0" Duration="0:0:0.2" AutoReverse="True" BeginTime="0:0:0"/></Storyboard></BeginStoryboard></Trigger.EnterActions><Trigger.ExitActions><BeginStoryboard><Storyboard><DoubleAnimation Storyboard.TargetName="checkImg"Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX" To="2" From="1.5" Duration="0:0:0.1" BeginTime="0:0:0"/><DoubleAnimation Storyboard.TargetName="checkImg"Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY" To="2" From="1.5" Duration="0:0:0.1" BeginTime="0:0:0"/><DoubleAnimation Storyboard.TargetName="checkImg"Storyboard.TargetProperty="RenderTransform.Children[0].ScaleX" To="0" From="2" Duration="0:0:0.2" BeginTime="0:0:0.1"/><DoubleAnimation Storyboard.TargetName="checkImg"Storyboard.TargetProperty="RenderTransform.Children[0].ScaleY" To="0" From="2" Duration="0:0:0.2" BeginTime="0:0:0.1"/><DoubleAnimation Storyboard.TargetName="checkImg"Storyboard.TargetProperty="RenderTransform.Children[1].Angle" To="30" From="0" Duration="0:0:0.1" AutoReverse="True" BeginTime="0:0:0"/></Storyboard></BeginStoryboard></Trigger.ExitActions></Trigger></ControlTemplate.Triggers></ControlTemplate></Setter.Value></Setter></Style>
總結(jié)
以上是生活随笔為你收集整理的WPF ControlTemplate 仿QQ概念版CheckBox的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。