WPF 使用MediaElement元素循环播放问题

      在实际运用中,有时候需求不是向人为的控制视频怎么播放,而是单一的循环播放视频,但是在wpf中默认的是播放一次就结束了!  

      为此,我又度娘了下,发现实现的方式有很多,比如采用故事板的方式(这其实是一个很有趣的方式),不过个人感觉大材小用,也复杂了些,还是贴下方式

         <MediaElement  Name="myMediaElement" Margin="13,35,14,0"  Height="100" VerticalAlignment="Top">
            <MediaElement.Triggers>
                <EventTrigger RoutedEvent="MediaElement.Loaded">
                    <EventTrigger.Actions>
                        <BeginStoryboard>
                            <Storyboard>
                                <MediaTimeline Source="banner[2].avi" Storyboard.TargetName="myMediaElement"  
                 RepeatBehavior="Forever" />
                            </Storyboard>
                        </BeginStoryboard>
                    </EventTrigger.Actions>
                </EventTrigger>
            </MediaElement.Triggers>
        </MediaElement>

当然,还有更简单的方式,不是有一个mediaended时间么? 在里面协商movie.paly()! 什么!你会发现一样不能播放,这时候需要先停止,再播放,这是以下代码:

 	private void mediaShow_MediaEnded(object sender, RoutedEventArgs e)
        {
            (sender as MediaElement).Stop();
            (sender as MediaElement).Play();  
        }

        为什么要停止呢!? 这是我的理解,就好比指针,当播放结束后,指针指向影片的结尾处,这时候你再播放还是在结尾处,所以需要用stop来恢复一下,使指向影片的开头。当然这只是我的个人意见以及理解,看见有人使用先停止再播放想到的。


  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值