private void buttonEditExtraInfo_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         if (si.streamType == StreamType.Video)
         {
             VideoFileInfo vfi = new VideoFileInfo();
             if (si.extraFileInfo != null && si.extraFileInfo.GetType() == typeof(VideoFileInfo))
             {
                 vfi = new VideoFileInfo(si.extraFileInfo);
             }
             EditVideoFileInfoWindow evfiw = new EditVideoFileInfoWindow(vfi);
             evfiw.ShowDialog();
             if (evfiw.DialogResult == true)
             {
                 si.extraFileInfo = new VideoFileInfo(evfiw.videoFileInfo);
                 UpdateStatusInfo();
             }
         }
         else if (si.streamType == StreamType.Subtitle)
         {
             SubtitleFileInfo sfi = new SubtitleFileInfo();
             if (si.extraFileInfo != null && si.extraFileInfo.GetType() == typeof(SubtitleFileInfo))
             {
                 sfi = new SubtitleFileInfo(si.extraFileInfo);
             }
             EditSubtitleFileInfoWindow esfiw = new EditSubtitleFileInfoWindow(sfi);
             esfiw.ShowDialog();
             if (esfiw.DialogResult == true)
             {
                 si.extraFileInfo = new SubtitleFileInfo(esfiw.subtitleFileInfo);
                 UpdateStatusInfo();
             }
         }
     }
     catch (Exception)
     {
     }
 }
 private void buttonEditExtraInfo_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         if (si.streamType == StreamType.Video)
         {
             VideoFileInfo vfi = new VideoFileInfo();
             if (si.extraFileInfo != null && si.extraFileInfo.GetType() == typeof(VideoFileInfo)) vfi = new VideoFileInfo(si.extraFileInfo);
             EditVideoFileInfoWindow evfiw = new EditVideoFileInfoWindow(vfi);
             evfiw.ShowDialog();
             if (evfiw.DialogResult == true)
             {
                 si.extraFileInfo = new VideoFileInfo(evfiw.videoFileInfo);
                 UpdateStatusInfo();
             }
         }
         else if (si.streamType == StreamType.Subtitle)
         {
             SubtitleFileInfo sfi = new SubtitleFileInfo();
             if (si.extraFileInfo != null && si.extraFileInfo.GetType() == typeof(SubtitleFileInfo)) sfi = new SubtitleFileInfo(si.extraFileInfo);
             EditSubtitleFileInfoWindow esfiw = new EditSubtitleFileInfoWindow(sfi);
             esfiw.ShowDialog();
             if (esfiw.DialogResult == true)
             {
                 si.extraFileInfo = new SubtitleFileInfo(esfiw.subtitleFileInfo);
                 UpdateStatusInfo();
             }
         }
     }
     catch (Exception)
     {
     }
 }