BitmapImage.DownloadProgress Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Происходит при значительном изменении хода загрузки содержимого BitmapImage .
public:
virtual event DownloadProgressEventHandler ^ DownloadProgress;
// Register
event_token DownloadProgress(DownloadProgressEventHandler const& handler) const;
// Revoke with event_token
void DownloadProgress(event_token const* cookie) const;
// Revoke with event_revoker
BitmapImage::DownloadProgress_revoker DownloadProgress(auto_revoke_t, DownloadProgressEventHandler const& handler) const;
public event DownloadProgressEventHandler DownloadProgress;
function onDownloadProgress(eventArgs) { /* Your code */ }
bitmapImage.addEventListener("downloadprogress", onDownloadProgress);
bitmapImage.removeEventListener("downloadprogress", onDownloadProgress);
- or -
bitmapImage.ondownloadprogress = onDownloadProgress;
Public Custom Event DownloadProgress As DownloadProgressEventHandler
<BitmapImage DownloadProgress="eventhandler"/>
Тип события
Примеры
// somewhere in initialization
bitmapImage.DownloadProgress += new EventHandler<DownloadProgressEventArgs>(bi_DownloadProgress);
bitmapImage.ImageOpened += new EventHandler<ExceptionRoutedEventArgs>(bi_ImageOpened);
...
//progressBar is an existing control defined in XAML or extracted from a XAML template
void bi_DownloadProgress(object sender, DownloadProgressEventArgs e)
{
progressBar.Value = e.Progress;
}
void bi_ImageOpened(object sender, RoutedEventArgs e)
{
progressBar.Visibility = Visibility.Collapsed;
}
Комментарии
В случаях, когда асинхронная загрузка и декодирование объекта BitmapImage достаточно длинны, чтобы быть заметным для пользователя, приложение может обработать DownloadProgress в источнике и отобразить ProgressRing или ProgressBar для указания состояния хода выполнения. Они могут отображаться в области пользовательского интерфейса, в которую в конечном итоге отображается изображение, или в другом месте в пользовательском интерфейсе. Используйте DownloadProgressEventArgs.Progress , чтобы изменить пользовательский интерфейс для ProgressBar.