private void open_Click(object sender, RoutedEventArgs e)
 {
     OpenFileDialog ofd = new OpenFileDialog();
     ofd.AddExtension = true;
     if (statut == false)
     {
         ofd.Filter = "Media Files (*.mp3,*.wav,*.wma,*.mp4*.wmv,*.avi,*.jpg,*.jpeg)|*.mp3;*.wav;*.wma;*.mp4;*.wmv;*.avi;*.jpg;*.jpeg";
     }
     else
     {
         ofd.Filter = "Media Files (*.mp3,*.wav,*.wma,*.mp4,*.avi)|*.mp3;*.wav;*.wma;*.mp4;*.avi";
     }
     ofd.ShowDialog();
     if (statut == false && ofd.FileName != "")
     {
         try
         {
             TagLib.File file = TagLib.File.Create(ofd.FileName);
             Media tmp = new Media();
             tmp.title = file.Tag.Title;
             tmp.album = file.Tag.Album;
             tmp.artist = file.Tag.Performers.ToList<String>();
             tmp.path = ofd.FileName;
             if (tmp.title == null)
             {
                 tmp.title = ofd.SafeFileName;
             }
             if (tmp.album == null)
             {
                 tmp.album = "N/A";
             }
             if (tmp.artist.Count == 0)
             {
                 tmp.artist.Add("N/A");
             }
             listView.Items.Add(tmp);
         }
         catch
         {
             new NullReferenceException("Error while opening media file");
         }
     }
     else if (statut == true && ofd.FileName != "")
     {
         lib.addMusic(ofd.FileName);
         listView.Items.Add(lib.library.songs.Last());
     }
     System.Windows.Threading.DispatcherTimer dispatcherTimer = new System.Windows.Threading.DispatcherTimer();
     dispatcherTimer.Tick += new EventHandler(timer_Tick);
     dispatcherTimer.Interval = new TimeSpan(0, 0, 1);
     dispatcherTimer.Start();
 }
 private bool compare_medias_by_order(string order, Media first, Media second)
 {
     if (order == "Title")
         return (first.title.CompareTo(second.title) > 0);
     else if (order == "Album")
         return (first.album.CompareTo(second.album) > 0);
     else
         return (first.artist[0].CompareTo(second.artist[0]) > 0);
 }