我正在创建BitmapImages,从IP cam下载图像。
我使用DownloadCompleted
,DownloadFailed
和DownloadProgress
个事件。
但是每一个小时,我都会重置一切。这些图像是动态创建的,我想在重置时清除它们(或销毁它们)。但我找不到他们,他们继续发动事件...... 这里的例子是:
void dispatcherTimer_Tick(object sender, EventArgs e)
{
BitmapImage img = New BitmapImage();
img.BeginInit();
img.CacheOption = BitmapCacheOption.None;
img.UriCachePolicy = new RequestCachePolicy(RequestCacheLevel.NoCacheNoStore);
img.CreateOptions = BitmapCreateOptions.IgnoreImageCache;
img.DownloadCompleted += DownloadCompleted;
img.DownloadFailed += DownloadFailed;
img.DownloadProgress += bi_DownloadProgress;
img.UriSource = new Uri(xR["URLJPG"].ToString());
//xR["URLJPG"] is a DataViewRow, that contains the url to download for each image)
img.EndInit();
}
这种方式创建了几个图像。我想清除你们所有人。