Добавить панель динамически c # - PullRequest
1 голос
/ 28 мая 2011

Я пытаюсь добавить панели в групповую коробку, у панелей будет фоновое изображение.

У меня есть три файла, поэтому у меня должно быть 3 панели в групповой коробке, но 4 панели будут отображаться с одной и той же фотографией,Я использую следующий код:

DirectoryInfo di = new DirectoryInfo(folder);
        FileInfo[] rgFiles = di.GetFiles();
        Point NewPosition =new Point() ;

        foreach (FileInfo fi in rgFiles)
        {
            Bitmap b = new Bitmap(folder+@"\"+ fi.Name);

            Panel p = new Panel();
            p.Size = b.Size;
            p.BackgroundImage = b;
            p.Name = fi.Name;
            p.Dock = DockStyle.Top;



            control.Controls.Add(p);

        }

Любые предложения, пожалуйста.

1 Ответ

5 голосов
/ 28 мая 2011

Вы не устанавливаете расположение панелей.

Я предполагаю, что панели уложены друг на друга, что делает верхнюю панель единственной жизнеспособной панелью.

Панель имеет Местоположение свойство, которое вы можете установить.Вы также можете закрепить свои панели, используя свойство Dock .

Пара быстрых примеров:

p.Dock = DockStyle.Top;

или

p.Location = new Point(50, 50);
...