【发布时间】:2013-05-20 09:19:52
【问题描述】:
我有一个表格,上面排列着许多 PictureBox,但并非所有图片都同时显示在表格上(表格上有滚动条可以显示看不见的 PictureBox)。他们的图像位置是互联网 URL。我想在加载每个图像后立即将这些图像保存在本地,因此我挂钩到那些 PictureBox 的 ContentLoaded 事件。
问题是看不见的 PictureBox 不加载图像,因此无法保存它们的图像,直到滚动表单使其可见。但我不能指望用户会一直滚动表单的全部内容。
有没有办法强制看不见的 PictureBox 加载它的图像?
谢谢。
编辑:
您好,DmitryG,问题可能是我的 PictureBoxes LoadAsync 在加载真实内容之前“加载图像”。在您的代码中,如果您添加
pb.ImageLocation = "http://images.google.com.vn/intl/en_ALL/images/logos/images_logo_lg.gif";
pb.LoadAsync();
在循环之前
pb.ImageLocation ="https://www.google.com/images/srpr/logo4w.png";
pb.LoadAsync();
然后加载表单,你只会看到 7 个消息框而不是 10 个。这是因为隐藏了 3 个图片框。
【问题讨论】:
-
只需使用 Image 属性来分配“等待加载”图像。使用资源中的一个。
标签: c# picturebox