使用ToggleButton和StackPanel+Border实现圆角开关按钮动画效果
2013-09-27 11:36
1126 查看
<ToggleButton Height="40" Width="105" HorizontalAlignment="Left" Margin="138,122,0,0" Name="button1" VerticalAlignment="Top" Click="button1_Click"> <ToggleButton.Content> <StackPanel Name="s1" Width="100" Height="22" Orientation="Horizontal" HorizontalAlignment="Left"> <Border Name="cd1" CornerRadius="10" BorderThickness="1" Width="100" BorderBrush="#FF001900"> <Border.Background> <ImageBrush ImageSource="/MoveButton;component/Images/12.png" /> </Border.Background> </Border> <Border Name="cd2" CornerRadius="10" BorderThickness="1" Width="100" BorderBrush="#FF001900"> <Border.Background> <ImageBrush ImageSource="/MoveButton;component/Images/13.png" /> </Border.Background> </Border> </StackPanel> </ToggleButton.Content> </ToggleButton>
private void button1_Click(object sender, RoutedEventArgs e) { if (button1.IsChecked == true) { DoubleAnimation d1 = new DoubleAnimation(); d1.From = 0; d1.To = 100; d1.Duration = new Duration(TimeSpan.Parse("0:0:0.2")); cd2.BeginAnimation(StackPanel.WidthProperty, d1); DoubleAnimation d2 = new DoubleAnimation(); d2.From = 100; d2.To = 0; d2.Duration = new Duration(TimeSpan.Parse("0:0:0.2")); cd1.BeginAnimation(StackPanel.WidthProperty, d2); } if (button1.IsChecked == false) { DoubleAnimation d1 = new DoubleAnimation(); d1.From = 100; d1.To = 0; d1.Duration = new Duration(TimeSpan.Parse("0:0:0.2")); cd2.BeginAnimation(StackPanel.WidthProperty, d1); DoubleAnimation d2 = new DoubleAnimation(); d2.From = 0; d2.To = 100; d2.Duration = new Duration(TimeSpan.Parse("0:0:0.2")); cd1.BeginAnimation(StackPanel.WidthProperty, d2); } }
代码没精简,无图无真相,看看OFF和ON
![](http://images.cnitblog.com/blog/565893/201309/27113320-27e9af4ea5de4221a2c9381165bd5391.png)
![](http://images.cnitblog.com/blog/565893/201309/27113305-93ec4ffeed014f12b6369036e4b8c314.png)
相关文章推荐
- 状态开关按钮ToggleButton的简单使用:实现动态控制布局
- Android开关按钮ToggleButton的使用,可以实现密码框和文本框的切换
- Extjs 利用panel html属性加入DIV实现如TextArea的效果,并且能正确使用html标签,实现如向textarea文本域嵌入按钮button或其他控件,,而且兼容firefox
- Android的ToggleButton实现开关按钮
- android学习之ToggleButton实现开关效果
- 不使用JS,使用CSS3 target 以及 动画效果实现,点击一下弹出,并且保持弹出状态,然后再点击一下弹回的导航栏(或者可以叫做按钮)
- ToggleButton(开关按钮)和Switch(开关)的使用
- 状态开关按钮(ToggleButton)及按钮(Swich)的使用
- GridControl中某一列使用开关按钮效果实现
- 使用jQuery实现类似开关按钮的效果
- 使用ToggleButton按钮实现开关效果
- ToggleButton(状态开关按钮)及Swich(开关)使用详解
- 使用ToggleButton按钮实现的灯泡开关效果
- button的一些使用小常识(点击效果,button圆角,边框线的实现)
- Android开发之ToggleButton实现开关效果示例
- 使用jQuery实现类似开关按钮的效果
- 超炫button按钮动画效果
- IOS 开发使用UITableView实现自动布局多个button 按钮
- 使用CSS3实现超炫的Loading(加载)动画效果
- 使用Bootstrap3和Ladda UI实现的多种按钮“加载中”效果体验