Привет, у меня есть следующий код C# для загрузки изображения при нажатии кнопки.Загрузка изображения с использованием webclient не работает
private void DownloadCover()
{
try
{
string SaveFileLocation = AppDomain.CurrentDomain.BaseDirectory + "\\data\\covers\\test.jpg" ;
WebClient webClient = new WebClient();
string cURL = "http://upload.wikimedia.org/wikipedia/commons/4/45/Right-facing-Arrow-icon.jpg";
webClient.DownloadFileCompleted += new AsyncCompletedEventHandler(DownloadCompleted);
webClient.DownloadProgressChanged += new DownloadProgressChangedEventHandler(DownloadProgressChanged);
webClient.DownloadFileAsync(new Uri(cURL), SaveFileLocation);
webClient.Dispose();
}
catch (Exception exd)
{
ErrorLogger.LogError(exd.ToString());
}
}
private void DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)
{
lbStatus.Text = "Downloading Cover..." + e.ProgressPercentage + "%";
}
private void DownloadCompleted(object sender, AsyncCompletedEventArgs e)
{
try
{
lbStatus.Text = "Download Complete";
string CoverPath = AppDomain.CurrentDomain.BaseDirectory + "\\data\\covers\\test.jpg";
coverImage.Image = new Bitmap(CoverPath);
}
catch (Exception ex)
{
ErrorLogger.LogError(ex.ToString());
}
}
private void btnDownloadImage_Click(object sender, EventArgs e)
{
DownloadCover();
}
Когда кнопка нажата, код никогда не получает, чтобы выполнить изменение выполнения загрузки метод DownloadProgressChanged
обработки. Всякий раз, когда нажимается кнопка, она мгновенно переходит к методу DownloadComplete
и печатает «Загрузка завершена» в ярлыке. Я попытался загрузить изображение с переменным размером без везения. Я не знаю, что не так с моим кодом. Может кто-нибудь, пожалуйста, помогите мне здесь?
Благодаря
mmmh, я не думаю, что вы сможете делать то, что хотите. В основном, чтобы обновить ваш lbstatus.Text, вам нужно отправить ответ клиенту, но чтобы отправить ответ, вам нужен запрос ... Я никогда не использовал асинхронный код на стороне сервера, но, как я вижу вы можете использовать его только для обновления базы данных или отправки почты или чего-либо, но отправки еще раз ответа на клиента ... –
@Bartdude, обновление метки не является моей проблемой, код не загружает изображение вообще. – WatsMyName