且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Windows Phone 实用开发技巧(21):自动循环播放视频

更新时间:2022-05-28 05:11:54

In Windows Phone Mango update, we can use VideoBrush since we could not do that in windows phone 7 . So there is something interesting to do. We can develop more fantasitic apps.  For example, we can play a video as background in our application. We want to play video in a loop also. But here comes the problem. Since there is no MediaTimeline in Silverlight for Windows Phone API. How can we repeat media playback ?

In WPF or Silverlight, we can use following code to repeat media playback.

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x
="http://schemas.microsoft.com/winfx/2006/xaml" >
  
<StackPanel>

    
<!-- The MediaElement control plays the sound. -->
    
<MediaElement Name="myMediaElement" >
      
<MediaElement.Triggers>
        
<EventTrigger RoutedEvent="MediaElement.Loaded">
          
<EventTrigger.Actions>
            
<BeginStoryboard>
              
<Storyboard>

                
<!-- The MediaTimeline has a RepeatBehavior="Forever" which makes the media play
                     over and over indefinitely.
-->
                
<MediaTimeline Source="media\tada.wav" Storyboard.TargetName="myMediaElement"  
                 RepeatBehavior
="Forever" />

              
</Storyboard>
            
</BeginStoryboard>
          
</EventTrigger.Actions>
        
</EventTrigger>
      
</MediaElement.Triggers>
    
</MediaElement>

  
</StackPanel></Page>

 

 In windows phone , I find simple solution to play video in a loop. Since we can catch Media_End event, we can play again in ended event.

 Windows Phone 实用开发技巧(21):自动循环播放视频

Another suggestion : do not play large video in your windows phone app since it will cause a little bit performance damage.

Source code can be found here :  Windows Phone 实用开发技巧(21):自动循环播放视频

 

 PS:第一次用英文写技术博客,真D疼,奈何为了学好E文,只好疼下去了,因为我坚信:疼着疼着就不疼了!



    本文转自xshf12345 51CTO博客,原文链接:http://blog.51cto.com/alexis/672031,如需转载请自行联系原作者