PictureBox 在 table 下载后更改图片
PictureBox change Image after table download
我正在尝试下载一个将使用六个 table 的页面。有 6 个复选框和 6 个图片框。当我单击按钮 "Download" 时,下载开始。因此,每个复选框在成功下载时都被成功取消选中,但图像不会出现。在我的代码完成后所有图像一起出现 运行。
我也尝试了一个 backgroundworker,但它不起作用。
if (chkBoxA.Checked)
{
lblInfo.Text = "Downloading table...";
if (DownLoadAsset() == "Success!")
{
pBoxA.Image = pbsuccess;
chkBoxA.CheckState = CheckState.Unchecked;
}
else
{
pBoxA.Image = pbfail;
chkBoxA.CheckState = CheckState.Checked;
}
}
您没有给应用程序下载后刷新屏幕的机会。我这样做的方式是:
- 将图像下载推送到工作线程。您需要使用
Invoke
从线程设置控件的图像 属性。
- 下载图像并设置控件的
Image
属性 后,执行 Thread.Sleep(100)
或类似操作让调度程序 运行 成为 UI 线程,这将进行屏幕更新。
我正在尝试下载一个将使用六个 table 的页面。有 6 个复选框和 6 个图片框。当我单击按钮 "Download" 时,下载开始。因此,每个复选框在成功下载时都被成功取消选中,但图像不会出现。在我的代码完成后所有图像一起出现 运行。
我也尝试了一个 backgroundworker,但它不起作用。
if (chkBoxA.Checked)
{
lblInfo.Text = "Downloading table...";
if (DownLoadAsset() == "Success!")
{
pBoxA.Image = pbsuccess;
chkBoxA.CheckState = CheckState.Unchecked;
}
else
{
pBoxA.Image = pbfail;
chkBoxA.CheckState = CheckState.Checked;
}
}
您没有给应用程序下载后刷新屏幕的机会。我这样做的方式是:
- 将图像下载推送到工作线程。您需要使用
Invoke
从线程设置控件的图像 属性。 - 下载图像并设置控件的
Image
属性 后,执行Thread.Sleep(100)
或类似操作让调度程序 运行 成为 UI 线程,这将进行屏幕更新。