0 0

silverlight中的控件MediaElement3

大家好,我目前在用sl写一个视频播放器。大致界面如下:



问题在于,用鼠标拖动进度条时选择播放时,发现视频会停顿很长时间。
去网上搜过一些帖子,貌似大家都没注意到这个问题。
我的代码如下:

void player_MediaOpened(object sender, RoutedEventArgs e)
{
    this.bdControl.Visibility = System.Windows.Visibility.Visible;
    //set the sldPlaying's maximum【sldPlaying就是下面的进度条,player是页面中的视频控件MediaElement】
    this.sldPlaying.Maximum = this.player.NaturalDuration.TimeSpan.TotalSeconds;

    this.LayoutRoot.Width = this.player.NaturalVideoWidth;
    this.LayoutRoot.Height = this.player.NaturalVideoHeight;

    timer.Start();

    duration = this.player.NaturalDuration.HasTimeSpan ? this.player.NaturalDuration.TimeSpan : TimeSpan.FromMilliseconds(0);
    this.tbkTotal.Text = string.Format("{0:00}:{1:00}:{2:00}",duration.Hours,duration.Minutes,duration.Seconds);
    //go to the first frame
    //this.player.Position = TimeSpan.FromSeconds(1);
    //this.player.Pause();
}

//这里是注册了进度条值改变时的事件处理函数
private void sldPlaying_ValueChanged(object sender, System.Windows.RoutedPropertyChangedEventArgs<double> e)
{
    // TODO: Add event handler implementation here.
    if (this.player.CanSeek)
    {
        //this.player.Pause();
        this.player.Position = TimeSpan.FromSeconds(this.sldPlaying.Value);
        //this.player.Play();
    }
}

希望大家能帮忙想想办法。
谢谢。
2012年3月12日 15:50
  • 大小: 871.7 KB

1个答案 按时间排序 按投票排序

0 0

 if (this.player.CanSeek) 
    { 
        //this.player.Pause(); 
        this.player.Position = TimeSpan.FromSeconds(duration *this.sldPlaying.Value); 
        //this.player.Play(); 
    } 

2012年3月12日 19:35

相关推荐

    silverlight MediaElement 控件读取FLV格式视频

    MediaElement是Silverlight中的一个核心控件,用于播放音频和视频内容。本文将深入探讨如何使用Silverlight的MediaElement控件来读取FLV格式的视频,以及从客户端和服务端两种不同方式实现这一功能。 首先,让我们...

    Silverlight基本控件介绍.doc

    在Silverlight开发中,控件是构建用户界面的基础元素,它们提供了丰富的功能和交互性。以下是对这些控件的详细解释: 一、布局控件 布局控件是用于组织和定位其他控件的容器,例如Grid、StackPanel、Canvas和...

    silverlight自定义控件之多媒体视频播放器.docx

    Silverlight虽然提供了MediaElement控件,但并未提供一个完全封装好的、可以直接使用的播放器。因此,作者决定根据基本功能需求来封装一个简洁的播放器。 播放器的功能包括: 1. 播放和暂停,以及显示当前播放状态...

    用asp.net的silverlight控件做播放器例子

    在本文中,我们将深入探讨如何使用ASP.NET的Silverlight控件来创建一个功能丰富的播放器应用。Silverlight是微软推出的一种强大的富互联网应用程序(RIA)平台,它允许开发者构建具有丰富媒体体验和交互性的Web应用...

    wp7 控件练习

    SilverlightToolkitControls 是SilverlightToolkit中的控件练习 1. 项目WPControls中包含如下控件使用: 面板类控件 Grid Canvas StaticPanal Border Web控件 WebBrowaer 资源字典 ResourceDictionary ...

    MediaElement C#解码(h.264和aac)FLV MP4 源码

    MediaElement是Windows Presentation Foundation (WPF)和Silverlight中的一个控件,用于播放音频和视频内容。本项目涉及的"MediaElement C#解码(h.264和aac)FLV MP4 源码"是一个专门针对MediaElement的C#实现,它...

    silverlight 控件教程

    以下是一些Silverlight中常见控件的详细说明: 1. AutoCompleteBox:这个控件允许用户在文本框中输入文字,同时会基于输入内容动态显示下拉列表,帮助用户找到可能的匹配项。这对于快速搜索和数据输入非常有用。 2...

    Silverlight的基本控件(完整版)

    ### Silverlight基本控件概述 #### 一、布局控件Canvas **Canvas** 是一种非常基础的布局面板,它支持对其中的控件采用绝对坐标定位。这意味着开发者可以直接通过 `Canvas.Left` 和 `Canvas.Top` 属性来精确地设置...

    SilverLight播放视频

    1. **创建项目**: 使用Visual Studio创建一个新的Silverlight项目,并添加MediaElement控件到XAML布局中。 2. **设置源**: 为MediaElement指定视频源,可以是本地文件路径,也可以是URL。例如: ```xml ...

    silverlight视频聊天Demo

    用户可以通过调用相关API来开启摄像头,获取视频流,并将其显示在MediaElement中。同时,音频采集则可能通过Microphone类来实现,获取麦克风输入的声音。 此外,为了实现聊天功能,还需要一个文本输入和显示机制。...

    (19)Silverlight 2.0新增加类控件介绍

    本篇将详细讲解Silverlight 2.0版本中新增的类控件及其相关知识点。 首先,让我们了解Silverlight 2.0的核心改进。相较于最初的版本,2.0引入了大量的新功能和改进,包括对.NET Framework的支持,使得开发者可以...

    Silverlight清爽简洁MP3播放器

    首先,要理解Silverlight中的MediaElement控件,它是Silverlight用来播放音频和视频的核心组件。在MP3播放器中,MediaElement用于加载MP3文件,并通过编程接口控制播放行为。开发者可以通过设置MediaElement的Source...

    silverlight 播放器

    MediaElement是Silverlight中用于处理音频和视频内容的主要控件。它能够加载本地或远程媒体文件,并提供播放、暂停、停止、快进、倒退等基本操作。在我们的自定义音乐播放器中,MediaElement是核心部分,它负责播放...

    Silverlight2 声音循环播放实例

    首先,我们需要了解Silverlight 2中的MediaElement控件。MediaElement是Silverlight提供的一个核心控件,用于播放音频和视频。要实现声音循环播放,我们将主要依赖于这个控件及其事件。 1. 添加MediaElement控件:...

    Silverlight项目界面示例

    Silverlight的MediaElement控件可以用来集成音频和视频内容,提供丰富的媒体体验。 在实际项目中,Silverlight还可以与其他Microsoft技术,如WCF(Windows Communication Foundation)和ASP.NET结合,实现服务器端...

    摄像头控件

    在互联网技术中,这样的控件通常是由JavaScript、ActiveX、Flash或Silverlight等技术实现的,它们允许网页与用户的硬件设备(如摄像头)进行交互。 在描述中提到的“针对IE8.0浏览器无法视频摄像头拍照的控件”,...

    Silverlight初学者的入门课程

    通过在Silverlight控件中指定一个默认的.xaml文件,可以自动加载该页面作为应用程序的入口点,简化用户的启动流程。 #### 第十六章:如何从其他的XAML页面打开XAML页面? 在Silverlight中导航到不同的页面通常通过...

    Silverlight Audio Player源码.zip

    3. **MediaElement组件**:在Silverlight中,MediaElement是用于播放音频和视频的核心组件。在源码中,你会看到MediaElement是如何被使用来加载音频文件并进行播放控制的。例如,设置Source属性加载音频文件,使用...

    wpf简易播放器MediaElement

    这个播放器的核心组件是MediaElement控件,它允许开发者在WPF应用程序中嵌入视频和音频播放功能。MediaElement不仅支持常见的媒体格式,如WMV、MP4和AVI,还能通过设置属性和触发器来控制播放、暂停、停止等基本操作...

    Silverlight音乐播放器

    例如,开发音乐播放器的过程中,会涉及到XAML(Extensible Application Markup Language)用于界面布局和声明式编程,C#或VB.NET作为后台代码实现逻辑处理,以及MediaElement控件用于音频播放。MediaElement不仅支持...

Global site tag (gtag.js) - Google Analytics