使用PictureBox图像上的线程绘图

时间:2012-11-27 11:43:39

标签: c# multithreading gdi

我正在尝试使用线程在PictureBox上的Image上绘制多个省略号,但是当我与表单交互时(如移动它),GDI会抛出InvalidOperationException(当前正在使用的对象),因为我克隆了当前线程中的图像。

我想要实现的是能够在画布上设置几个形状的动画,并允许用户在与表单交互时获得流畅的体验(以及放大图像等)。 / p>

实现这一目标的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

在与PictureBox交互之前,您可能需要调用BeginInvoke来获取GUI线程。

像这样...

form.BeginInvoke(ManipulatePictureBox);

答案 1 :(得分:1)

保留后台线程与之交互的单独图像,然后在显示新内容时将其克隆到UI线程。克隆应该通过BeginInvoke

完成