2013-07-31 5 views
0

Я загружаю несколько изображений в Panel (несколько PictureBoxes внутри Panel) и хотел бы изменить размер изображений при изменении размера окна.Изменение размера PictureBox при изменении размера формы

Вот мой код:

foreach (string filename in ofdmulti.FileNames){ 
    picbox[i] = new PictureBox(); 
    picbox[i].Size = new System.Drawing.Size(256, 256); 
    picbox[i].SizeMode = PictureBoxSizeMode.Zoom; 
    picbox[i].Dock = DockStyle.Fill; 
    i++; 
} 

Но тогда я не вижу несколько изображений, только один и простиралась полностью, что может быть не так?

+1

@Skippy Похож на C# для меня – user1477388

+1

DockStyle.Fill расширяет элемент управления, чтобы заполнить весь его родительский элемент управления. –

ответ

2

У вас есть несколько проблем с кодом. Во-первых, эта строка кода будет гарантировать, что вы видите только одну PictureBox ... вероятно последний добавленный:

picbox[i].Dock = DockStyle.Fill; 

Во-вторых, я не вижу, что вы устанавливаете PictureBoxLocation, поэтому они все идет к Point(0, 0), то есть они будут частично перекрываться даже вне зависимости от настройки Dock.

Если вы пытаетесь получить приятное расположение, такое как плиточный, то вы можете использовать TableLayoutPanel. Это позволит вам описать сетку с помощью Rows и Columns, а затем добавить элементы управления PictureBox в сетку.

Есть другие варианты, конечно, в зависимости от вашей цели.

+0

Спасибо за ответы. Прежде всего, это C# .NET. Я использовал TableLayoutPanel, чтобы включать в себя графические ящики и хорошо работать, теперь я помещаю их в строки и столбцы, используя метод «Добавить» в tablelayoutpanel. Теперь, если я установил свойство tablelayoutpanel в AutoScroll = True, он не будет автоматически изменять размер изображений, поскольку он добавляет полосы прокрутки (вертикальные и горизонтальные). Каков наилучший способ прокрутки изображений, имеющих полосы прокрутки в TableLayoutPanel? – Matimont

0

Замените picturebox.Image с вашим измененным размером изображения и используйте sizemode.AutoSize!

Смежные вопросы