<Grid Width="300" Height="460">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="60"/>
<RowDefinition Height="100"/>
</Grid.RowDefinitions>
<Grid.Triggers>
<EventTrigger SourceName="btnStart" RoutedEvent="Button.Click">
<BeginStoryboard x:Name="myImageBStoryboard" >
<Storyboard CurrentTimeInvalidated="Storyboard_CurrentTimeInvalidated">
<DoubleAnimation Storyboard.TargetName="myImageB" Storyboard.TargetProperty="Opacity" From="1" To="0" Duration="00:00:05"> </DoubleAnimation>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
<EventTrigger SourceName="btnPause" RoutedEvent="Button.Click">
<PauseStoryboard BeginStoryboardName="myImageBStoryboard"></PauseStoryboard>
</EventTrigger>
<EventTrigger SourceName="btnResume" RoutedEvent="Button.Click">
<ResumeStoryboard BeginStoryboardName="myImageBStoryboard"></ResumeStoryboard>
</EventTrigger>
<EventTrigger SourceName="btnStop" RoutedEvent="Button.Click">
<StopStoryboard BeginStoryboardName="myImageBStoryboard"></StopStoryboard>
</EventTrigger>
<EventTrigger SourceName="btnMiddle" RoutedEvent="Button.Click">
<SeekStoryboard BeginStoryboardName="myImageBStoryboard" Offset="00:00:02">
</SeekStoryboard>
</EventTrigger>
</Grid.Triggers>
<Grid Grid.Row="0" Grid.Column="0" >
<Image x:Name="myImageA" Source="Images/A.jpg" Height="300" Width="300" Stretch="Fill"></Image>
<Image x:Name="myImageB" Source="Images/B.jpg" Height="300" Width="300" Stretch="Fill" ></Image>
</Grid>
<StackPanel Grid.Row="1" Grid.Column="0" Orientation="Horizontal">
<Button x:Name="btnStart" Content="Start" Width="50" Height="40" Margin="3" ></Button>
<Button x:Name="btnPause" Content="Pause" Width="50" Height="40" Margin="3" ></Button>
<Button x:Name="btnResume" Content="Resume" Width="50" Height="40" Margin="3" ></Button>
<Button x:Name="btnStop" Content="Stop" Width="50" Height="40" Margin="3" ></Button>
<Button x:Name="btnMiddle" Content="SeekToMiddle" Width="50" Height="40" Margin="3" ></Button>
</StackPanel>
<StackPanel Grid.Row="2" Grid.Column="0" Orientation="Vertical">
<TextBlock x:Name="myTextBlock" FontSize="13" Foreground="Red"> </TextBlock>
<ProgressBar x:Name="myProgressBar" Height="35" Background="White" Width="300" >
<ProgressBar.Foreground>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FF4DF22F" Offset="0.505" />
<GradientStop Color="#FFEFF5F1" Offset="1" />
<GradientStop Color="#FFF8F8F8" Offset="0.013" />
</LinearGradientBrush>
</ProgressBar.Foreground>
</ProgressBar>
</StackPanel>
</Grid>
 public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
} private void Storyboard_CurrentTimeInvalidated(object sender, EventArgs e)
{
Clock storyboardClock = sender as Clock;
if (storyboardClock.CurrentProgress != null)
{
myTextBlock.Text = storyboardClock.CurrentTime.ToString();
myProgressBar.Value = (double)storyboardClock.CurrentProgress*;(注意这儿storyboardClock.CurrentProgres值范围是0至1)
System.Diagnostics.Debug.WriteLine(myProgressBar.Value);
}
else
{
myProgressBar.Value = ;
myTextBlock.Text = "Stopped";
}
}
}

控制Storyboard播放zz的更多相关文章

  1. Swift实战-豆瓣电台(九)简单手势控制暂停播放(全文完)

    Swift实战-豆瓣电台(九)简单手势控制暂停播放 全屏清晰观看地址:http://www.tudou.com/programs/view/tANnovvxR8U/ 这节我们主要讲UITapGestu ...

  2. 基于windowsphone7的控制ppt播放

    最近突然想起了一个学长的一个利用手机控制ppt播放的一个创意,并想将其在windows phone7上实现一下. 经过几天的努力已经可以控制ppt的播放,暂停,上一张,下一张了,并且电脑会将当前ppt ...

  3. 利用OpenCV和MFC对话框建设一个有滑动条控制的播放器--转

    (一)问题的提出: OpenCV有一个很简单的播放视频文件并加载滑动条的程序,但是如何用MFC对话框来创建一个有滑动条控制的播放器呢,网络上四处搜索都没有代码可以参考,下的都是些骗子链接文件,很过分, ...

  4. Android中通过耳机按键控制音乐播放的实现

    今天在研究Android中实现Android 4.2.2源码中的Music应用的源码,关于通过耳机按键控制音乐播放的实现,有点好奇,就仔细分析了一下源码, 主要由 MediaButtonIntentR ...

  5. Unity编辑器 - 编辑器控制特效播放

    编辑器控制特效播放 Unity的动画编辑器不能预览粒子系统的播放,为了方便预览特效,设想制作一个预览特效的工具,通常一个特效有三种组件: - Animation - Animator - Partic ...

  6. (转)在Unity3D中控制动画播放

    用Unity3D也算是好久了,但是每次做项目总还是能学到新的东西.这次做一个TPS的项目就遇到了这样一个问题,如何同时在上下半身播放不同的动画?解决方法其实是很简单,但由于对于动画资源的了解不足导致问 ...

  7. Kinect 开发 —— 控制PPT播放

    实现Kinect控制幻灯片播放很简单,主要思路是:使用Kinect捕捉人体动作,然后根据识别出来的动作向系统发出点击向前,向后按键的事件,从而使得幻灯片能够切换. 这里的核心功能在于手势的识别,我们在 ...

  8. Unity实现代码控制音频播放

    前言 很久没说过Unity了,现在说一下Unity用代码控制音频播放 准备工作 1.需要播放的音频 2.给需要加声音的对象加Audio Source组件 3.新建Play脚本,并绑定需要播放声音的对象 ...

  9. js控制swf播放

    <html> <head> <title>用js代码控制flash的播放</title> <meta charset="utf-8&qu ...

随机推荐

  1. Cocos2d-JS/Ajax用Protobuf与NodeJS/Java通信

    原文地址:http://www.iclojure.com/blog/articles/2016/04/29/cocos2d-js-ajax-protobuf-nodejs-java Google的Pr ...

  2. AngularJS下拉列表select在option动态变化之后多出了一个错误项的问题

    场景: Select初始化之后,选中select的某个选项 通过AngularJS更新select的选项 错误写法: HTML(使用ng-repeat) <div ng-app="Te ...

  3. jQuery 顺便学习下CSS选择器 奇偶匹配nth-child(even)

    今天学习jQuery,看到nth-child(even)用法,特意找了下这个选择器的用法,在CSS3标准中,用法很强大. 对此,我把CSS3标准中nth-child()用法大致介绍下: CSS3伪类选 ...

  4. markdown语法与使用

    Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式. 语法 # 文本 =>h1标签 ##文本 =>h2标签 *文本* =&g ...

  5. Sicily 1031: Campus (最短路)

    这是一道典型的最短路问题,直接用Dijkstra算法便可求解,主要是需要考虑输入的点是不是在已给出的地图中,具体看代码 #include<bits/stdc++.h> #define MA ...

  6. Mac OS X 中一些常用的命令行技巧

    一.网络设置相关 1.网卡的物理地址的动态重置 出于某些需求,例如网络中的 IP 地址或网络帐号与网卡物理地址绑定,使得多个设备无法切换上网,可尝试临时更改物理地址.不过,系统偏好设置是不能修改网卡物 ...

  7. angular开发单页面应用--页面资源部分

    关于angular是什么,能够干什么就不在这里解释了,自行搜索了,或者等稍晚一点再解释... angular适合开发单页面应用,这句话在介绍angular的网站和博客里都可以提到.因为angular是 ...

  8. 用ip来获得用户所在地区信息

    淘宝api: package com.ebways.mq.utils; import com.alibaba.fastjson.JSON; import com.ebways.common.utils ...

  9. C++基础知识面试精选100题系列(11-20题)[C++ basics]

    [原文链接] http://www.cnblogs.com/hellogiser/p/100-interview-questions-of-cplusplus-basics-11-20.html [题 ...

  10. Linux中不同主机建立免登陆

    ssh-keygen -t rsa scp /root/.ssh/id_rsa.pub  root@192.168.0.236:/root/.ssh/authorized_keys cat /root ...