zoukankan      html  css  js  c++  java
  • 快速构建Windows 8风格应用20MediaElement

    本篇博文主要介绍MediaElement概述、MediaElement对象介绍、MediaElement常用属性、如何控制媒体播放。

    MediaElement概述

    通常在Windows 8风格应用中播放音频或视频文件时是使用MediaElement类进行构建的。

    MediaElement对象提供了用于播放视频或音频的属性和方法。

    相关MediaElement的开发示例可参考该链接:XAML media playback sampleMedia Play To sample

    MediaElement对象介绍

    使用MediaElement构建将视频文件在应用面中进行播放的功能是比较容易的。

    例如:

    XAML代码中声明MediaElement控件,Source属性值设置为视频的Uri。

     <MediaElement x:Name="media" Source="Video/Azure_Tmobile_500k.wmv"  Width="400" />

    C#代码中声明MediaElement控件,代码如下:

    MediaElement mediaElement = new MediaElement();
    mediaElement.Name = "mediaElement1";
    mediaElement.Width = 400;
    mediaElement.Source = new Uri("ms-appx:///Video/Azure_Tmobile_500k.wmv");
    this.grid1.Children.Add(mediaElement);

    允许效果图如下:

    当页面加载时,MediaElement就自动播放。通常情况下为了防止视频的自动播放,可将MediaElement控件的AutoPlay属性值设置为false。

    MediaElement常用属性

    MediaElement对象常用属性包括:

    1)AutoPlay属性:指定MediaElement是否自动开始播放。默认值为True;

    2)IsMuted属性:指定MediaElement是否设置为静音。默认值为False,True表示静音;

    3)Stretch属性:如何拉伸视频来填充MediaElement对象。默认值为Fill,其他值还有None、Uniform、UniformToFill;

    4)Volume属性:设置MediaElement对象音量值。默认值为0.5,最大值为0;

    MediaElement对象其他属性可参考该链接:MediaElement Class

    如何控制媒体播放

    我们可以使用MediaElement对象的PlayPauseStop 方法控制媒体播放。

    例如:

    XAML代码中声明MediaElement控件,添加三个Button来控制媒体的播放。

     <MediaElement x:Name="media" Source="Video/Azure_Tmobile_500k.wmv" Width="300" Height="300" Grid.Column="0" Grid.Row="0" Margin="518,42,548,426" />
     
    <Button Click="StopMedia" Grid.Column="0" Content="Stop" Margin="444,365,0,365" />      
    <Button Click="PauseMedia" Content="Pause" Margin="615,365,0,365" />         
    <Button Click="PlayMedia" Content="Play" Margin="828,365,0,365" />

    C#代码中:

    private void StopMedia(object sender, RoutedEventArgs e)
    {
         media.Stop();
     }
     private void PauseMedia(object sender, RoutedEventArgs e)
    {
         media.Pause();
    }
     private void PlayMedia(object sender, RoutedEventArgs e)
    {
         media.Play();
    }

    另外我们还可以设置MediaElement对象Position 属性来指定媒体特定的位置。

  • 相关阅读:
    [ZJOI2007]时态同步 题解
    Xposed 在android 6.0上报couldn't load class,找不到xposed_init中配置的入口类
    微信小程序http 400问题
    在Mac上 python中使用tesseract OCR (Pytesser) 识别图片中的文字
    微信小游戏跳一跳简单手动外挂(基于adb 和 python)
    第一个微信小程序踩的几个小坑
    android studio/Intellij IDEA(MAC OSX)中android模拟器无法启动的一种原因
    【转载】word2vec原理推导与代码分析
    HTTP Get Post究竟有哪些区别
    初试kotlin:用Kotlin开发桌面/CommandLine 工具
  • 原文地址:https://www.cnblogs.com/wzk89/p/2728921.html
Copyright © 2011-2022 走看看