我有一個FileSystemWatcher設置爲拾取一個圖片,將被放置在一個特定的目錄。我處理它的方式是在停靠在面板內的代碼中添加一個PictureBox。我跑了它,它爆炸了,我意識到我沒有正確處理與主線程上的控件的交互。下面是代碼:好奇WinForm控制線程安全後,在一個單獨的線程上添加控件
PictureBox pb = new PictureBox();
pnlCapturePicture.Controls.Add(pb);
pb.Dock = DockStyle.Fill;
pb.ImageLocation = photopath;
現在我明白瞭如何使[線程安全的調用到Windows窗體控件] [1],但我很好奇,如果我只是使面板中的添加線程安全的是我真的完成什麼?
說,如果我這樣做:
PictureBox pb = new PictureBox();
AddControlThreadSafe(pb);
pb.Dock = DockStyle.Fill;
pb.ImageLocation = photopath;
與PictureBox控件交互它被添加到面板後真的是線程安全的?
謝謝斯蒂芬,你回答了我甚至沒有問,但應該有的問題! – Flory 2010-07-14 15:33:43