我有 2 个线程。 在我的工作线程(不是主线程)中,我创建一个图片框数组,有时我需要向主窗体添加一个新的图片框,但我无权访问此窗体。我在某处读到我需要使用调用方法,但我只知道如何更新一个图片框或标签。 我不知道如何用这段代码来做到这一点:
food[x].Location = new Point(100,100);
food[x].Size = new Size(10,10);
food[x].BorderStyle = BorderStyle.Fixed3D;
food[x].ImageLocation = "food.png";
this.Controls.Add(food[x]);
food[x].BringToFront;
有人可以帮助我吗?
最佳答案
在 WinForms 中,您应该只有一个 UI 线程,并且只有该线程应该创建或使用 UI 组件。
如果需要,请使用 BackgroundWorker
加载图像,并在 BackgroundWorker
完成时将 PictureBox
创建留给 UI 线程.
关于c# - C# 线程问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6617977/