وقت بخیر دوستان .من با کد زیر عکسهای یک دایرکتوری رو میخونم و میریزمش توی یه پنل حالا مشکل اینجاست که تا زمانی که تمامی عکسها لود نشن فرم نشون داده نمیشه.
مد نظرم اینه که هر عکسی که لود میشه توی پنل نشون داده بشه و به مرور هم بقیه عکسها که لود میشه تو پنل قرار بگیرن. چجوری این رو توی یک بک گراند ورکر اضافه کنم؟




string[] files = Directory.GetFiles( @"D:\\FileServer\Gallery");
foreach (var filename in files)
{

if (filename.Substring(filename.Length - 2, 2) == "db")
break;

Bitmap bmp = null;
try
{
bmp = new Bitmap(filename);
}
catch (Exception ex)
{

}
var card = new PictureBox();
card.BackgroundImage = bmp;
card.Padding = new Padding(0);
card.BackgroundImageLayout = ImageLayout.Stretch;
card.MouseDown += new MouseEventHandler(card_click);
card.Size = new Size(200, 200);
card.Left = col+20;
card.Top = row ;
if (col > 400)
{
col = 0;
row += 220;
}
else
col += 220;


panel1.Controls.Add(card);
}