public Bitmap SaveImage(string url)
{
WebClient client = new WebClient();
client.OpenReadCompleted += client_OpenReadCompleted;
Stream stream = client.OpenRead(url);
Bitmap bitmap; bitmap = new Bitmap(stream);
stream.Flush();
stream.Close();
// client.Dispose();
return bitmap;
}
void client_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
{
MessageBox.Show(e.Result.ToString());
}
每次下载图片时, MessageBox不显示
为什么OpenReadCompleted事件不起作用?
答案 0 :(得分:0)
根据MSDN上“说明”下的文档,这仅适用于异步操作。
您要使用public List<BookModels> book_getList()
{
try
{
OpenCon();
List<BookModels> List = con.Query<BookModels>("book_getList", param: null, commandType: CommandType.StoredProcedure).ToList();
return List.ToList();
}
catch (Exception)
{
throw;
}
finally
{
CloseCon();
}
}
而不是使用OpenRead(url)
。
OpenReadAsycn(url)
返回void,因此您需要在OpenReadAsync
函数中对位图进行操作。
让我知道我能否更好地解释。