private void UnloadFile()
 {
     if (holder.Source != null)
     {
         try
         {
             holder.Source = null;
             var ss = AnimationBehavior.GetSourceStream(holder);
             if (ss != null)
             {
                 ss.Dispose();
             }
         }
         catch (Exception e)
         {
             Console.WriteLine("Unload File Failed - " + e);
         }
     }
 }
        /// <summary>
        /// GIFアニメ用に開いていたStreamを破棄
        /// </summary>
        private void StopGifAnimation()
        {
            var element = this.AssociatedObject;

            if (element != null)
            {
                try
                {
                    //前にGifアニメを再生していたら破棄
                    var prevStream = AnimationBehavior.GetSourceStream(element);
                    if (prevStream != null)
                    {
                        AnimationBehavior.SetSourceStream(element, null);
                        prevStream.Dispose();
                    }
                }
                catch
                {
                }
            }
        }