IntroductionIn this article we will see how to use Media Element
in WPF and we will explore some of the basic functionalities such as Play,
Pause, Stop, Back and Forward. Below example uses .wmv files.
Crating WPF Application
ProjectFire up Visual Studio 2008 and Create a WPF Application and
name the project as
MediaSampleWPF.

Now
we will first design the application so that all the functionalities would be
clear to us.
Add a Media Element, and several Buttons for the functions
to be achieved.
The following figure is the simple design of the
application.
XAML
Reference
Now
to start with in the beginning of the application all the Buttons except Open
should not be enabled. So lets do that.
#region Constructor
public Window1()
{
InitializeComponent();
IsPlaying(false);
}
#endregion
#region IsPlaying(bool)
private void IsPlaying(bool bValue)
{
btnStop.IsEnabled = bValue;
btnMoveBackward.IsEnabled = bValue;
btnMoveForward.IsEnabled = bValue;
btnPlay.IsEnabled = bValue;
}
#endregionNow
we will achieve the functionalities one by one.
Open
MediaAdd reference to the System.Windows.Forms DLL to use the
OpenFileDialog.

Add
the below code in the respective Button Click event.
#region Open Media
private void btnOpen_Click(object sender, RoutedEventArgs e)
{
System.Windows.Forms.OpenFileDialog ofd = new System.Windows.Forms.OpenFileDialog();
ofd.Filter = "Video Files (*.wmv)|*.wmv";
if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
MediaEL.Source = new Uri(ofd.FileName);
btnPlay.IsEnabled = true;
}
}
#endregionPlay
and Pause FunctionAdd the below code in Play Button Click event to
achieve the Play and Pause functions.
#region Play and Pause
private void btnPlay_Click(object sender, RoutedEventArgs e)
{
IsPlaying(true);
if (btnPlay.Content.ToString() == "Play")
{
MediaEL.Play();
btnPlay.Content = "Pause";
}
else
{
MediaEL.Pause();
btnPlay.Content = "Play";
}
}
#endregionStop
FunctionAdd the below code in Stop Button Click event.
#region Stop
private void btnStop_Click(object sender, RoutedEventArgs e)
{
MediaEL.Stop();
btnPlay.Content = "Play";
IsPlaying(false);
btnPlay.IsEnabled = true;
}
#endregionMove
Back and Forward FunctionAdd the below code in respective Back and
Forward Button Click events to achieve Back and Forward.
#region Back and Forward
private void btnMoveForward_Click(object sender, RoutedEventArgs e)
{
MediaEL.Position = MediaEL.Position + TimeSpan.FromSeconds(10);
}
private void btnMoveBackward_Click(object sender, RoutedEventArgs e)
{
MediaEL.Position = MediaEL.Position - TimeSpan.FromSeconds(10);
}
#endregionThat's
it run the application. As we mentioned in the code for opening only WMV files,
you can open only WMV file.
You can add other extensions like AVI, MPG
and MPEG to the Open function.


Hope
you guys like this article. It's for the beginner level.