Check Media duration : MediaElement « UI Controls « Silverlight






Check Media duration

    

<UserControl x:Class='SilverlightApplication3.MainPage'
    xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation' 
    xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml'
    xmlns:d='http://schemas.microsoft.com/expression/blend/2008' 
    xmlns:mc='http://schemas.openxmlformats.org/markup-compatibility/2006' 
    mc:Ignorable='d' 
    d:DesignWidth='640' 
    d:DesignHeight='480'>

    <Canvas x:Name="LayoutRoot" >
        <MediaElement x:Name="MyMedia"
                      Canvas.Left="100"
                      Canvas.Top="100"
                      Source="sound.wmv"
                      MediaOpened="MyMedia_MediaOpened"
                      AutoPlay="False">

        </MediaElement>
        
        <TextBlock x:Name="MediaInfo" 
                   Canvas.Left="20"
                   Canvas.Top="20" />
    </Canvas>
</UserControl>

//File: Page.xaml.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

namespace SilverlightApplication3
{
    public partial class MainPage : UserControl
    {
        public MainPage()
        {
            InitializeComponent();
        }
        private void MyMedia_MediaOpened(object sender, RoutedEventArgs e)
        {
            if (MyMedia.CanSeek)
            {
                MyMedia.Position = new TimeSpan(0, 0, 5);
            }

            Duration duration = MyMedia.NaturalDuration;
            if (duration != Duration.Automatic)
            {
                TimeSpan ts = duration.TimeSpan;
                MediaInfo.Text = ts.ToString();
            }
            else
            {
                MediaInfo.Text = "Cannot ascertain duration";
            }
            double naturalHeight = MyMedia.NaturalVideoHeight;
            double naturalWidth = MyMedia.NaturalVideoWidth;

            MediaInfo.Text = String.Format("Height: {0}, Width: {1}",
                naturalHeight,
                naturalWidth);
            MyMedia.Play();
        }
    }
}

   
    
    
    
  








Related examples in the same category

1.XAML File That Defines a MediaElement Control with Playback Button and a Progress Slider ControlXAML File That Defines a MediaElement Control with Playback Button and a Progress Slider Control
2.Creating a MediaElementCreating a MediaElement
3.MediaElement Stretch: Stretch.None
4.MediaElement Stretch: Stretch.Uniform
5.MediaElement Stretch: Stretch.UniformToFill
6.MediaElement Stretch: Stretch.Fill
7.Timeline marker for MediaElement
8.A MediaElement that uses relative syntax
9.A MediaElement that uses absolute syntax
10.MediaElement eventsMediaElement events
11.Clip a media element
12.Media volumn controlMedia volumn control
13.Set MediaElement Opacity
14.Play wmv media filePlay wmv media file
15.VideoBrush and MediaElement
16.Download Progress event for MediaElement
17.Show the NaturalDuration of a MediaElement
18.A MediaElement referencing a client-side playlist
19.MediaElement with mms protocol
20.Using the MarkerReached event to show a caption on a MediaElement
21.Media playerMedia player
22.Loading media content that has been downloaded on demandLoading media content that has been downloaded on demand
23.Html integration with SilverlightHtml integration with Silverlight