WPF 4 媒体播放器(MediaElement)

赞助商

        在WPF 中可以使用MediaElement 为应用程序添加媒体播放控件,以完成播放音频、视频功能。由于MediaElement 属于UIElement,所以它同时也支持鼠标及键盘的操作.

           在XAML 中放入一个MediaElement 控件(支持视频播放),五个Button 控件(分别用于“打开视频文档”、“播放/暂停”、“停止”、“快退”、“快进”),一个Slider 控件(控制音量)。

 

  1. <StackPanel HorizontalAlignment="Center" Margin="20">
  2.     <Border BorderThickness="3" Background="Black">
  3.         <Border.BorderBrush>
  4.             <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
  5.                 <GradientStop Offset="0" Color="White"/>
  6.                 <GradientStop Offset="0.5" Color="Gold"/>
  7.             </LinearGradientBrush>
  8.         </Border.BorderBrush>
  9.         <MediaElement Height="300" Width="450" Name="mediaElement"
  10.                       Volume="0.5" LoadedBehavior="Manual"
  11.                       MouseLeftButtonUp="mediaElement_MouseLeftButtonUp"/>
  12.     </Border>
  13.     <StackPanel Orientation="Horizontal" Height="40" HorizontalAlignment="Center">
  14.         <Button x:Name="openBtn" Content="Open File"
  15.                 Style="{StaticResource btnStyle}" Click="openBtn_Click"/>
  16.         <Button x:Name="playBtn" Content="Play"
  17.                 Style="{StaticResource btnStyle}" Click="playBtn_Click"/>
  18.         <Button x:Name="stopBtn" Content="Stop"
  19.                 Style="{StaticResource btnStyle}" Click="stopBtn_Click"/>
  20.         <Button x:Name="backBtn" Content="Back"
  21.                 Style="{StaticResource btnStyle}" Click="backBtn_Click"/>
  22.         <Button x:Name="forwardBtn" Content="Forward"
  23.                 Style="{StaticResource btnStyle}" Click="forwardBtn_Click"/>
  24.     </StackPanel>
  25.     <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Margin="5">
  26.         <TextBlock Text="Volume" Foreground="Gold"/>
  27.         <Slider x:Name="volumeSlider" Minimum="0" Maximum="1" Value="0.5" Width="200"/>
  28.     </StackPanel>
  29. </StackPanel>
    注意,MediaElement 的LoadedBehavior 需要设置为Manual,这样才可以手动控制视频的播放状态。

        界面样式

        上面代码中已经为部分控件设置了一些简单样式,其中Button 控件通过静态资源btnStyle 进行了较为复杂的样式设定。首先修改了Button 的默认样式,并且在鼠标移至上方时字体颜色也会产生变化。

      

    • <Window.Resources>
    •     <Style x:Key="btnStyle" TargetType="Button">
    •         <Setter Property="Background">
    •             <Setter.Value>
    •                 <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
    •                     <GradientStop Offset="0" Color="White"/>
    •                     <GradientStop Offset="0.5" Color="#FF554D4A"/>
    •                 </LinearGradientBrush>
    •             </Setter.Value>
    •         </Setter>
    •         <Setter Property="FontStyle" Value="Italic"/>
    •         <Setter Property="Margin" Value="5"/>
    •         <Setter Property="Width" Value="60"/>
    •         <Setter Property="Foreground" Value="Gold"/>
    •             <Trigger Property="Button.IsMouseOver" Value="True">
    •                 <Setter Property="Foreground" Value="Black"/>
    •             </Trigger>
    •         </Style.Triggers>
    •     </Style>
    • </Window.Resources>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值