C#中的图片框

时间:2013-03-17 21:25:11

标签: c# winforms picturebox

我在添加一些picture boxes时遇到问题。我有一个form(和它的类)和一个单独的类。我想要做的是在picture boxes中放入我的第二课中的一些form,但似乎我无法弄清楚如何。哦,我不想将图片框从第二个类发送到主类,并将其添加到那里,但只是直接添加它。如果我尝试这样的话:

Form1.ActiveForm.Controls.Add(x); 

(其中x是我的图片框)来自第二课,我得到'Cross-thread operation not valid'例外。

感谢您的任何建议!

1 个答案:

答案 0 :(得分:0)

您是否尝试在非UI线程上显示您的图片?通常,这是您获得跨线程操作无效异常的方式。

您可能只需要在课堂上执行以下操作。

if (this.InvokeRequired)
{
   this.Invoke(() => ActiveForm.Controls.Add(x));
}
else
{
   ActiveForm.Controls.Add(x);
}

这将确保您使用UI线程来执行代码。