2010-02-17 2 views
1

ниже приведен пример тестового кода, это, возможно, не будет совершенно правильно:C# PictureBox.Image

 for (int i = 0; i < MAXCOL; i++) 
     { 
      for (int j = 0; j < MAXROW; j++) 
      { 
       HomeArrayPicBox[i, j].Image = Properties.Resources.scan; 
      } 
     } 

мой вопрос, а не все PictureBoxes отображающих ту же картину, что мне нужно, чтобы увеличить изображение также. например Properties.Resources.scan1, Properties.Resources.scan2 ...

, пожалуйста, вздумайте как лучше всего это достичь.

спасибо.

ответ

4

Вы можете получить объект из файла ресурсов по имени, как это:

HomeArrayPicBox[i, j].Image = 
    (Image)Properties.Resources.ResourceManager.GetObject("Scan" + i); 
+0

Я не пробовал это раньше ... просто интересно, вам нужно сделать приведение типа здесь при извлечении объекта из диспетчер ресурсов? – Aaron

+0

Да; Я забыл об этом. Благодарю. – SLaks

+0

Я получаю сообщение об ошибке: Невозможно неявно преобразовать тип 'object' в 'System.Drawing.Image'. Явное преобразование существует (вы пропускаете листинг?) – iTEgg

0

Сделайте сканирование массивом ресурсов изображения и на каждой итерации определите правильный индекс этого массива, чтобы заполнить поле с изображением.

0

Вы можете поместить все объекты изображения в массив. Длина этого массива должна быть MAXCOL * MAXROW. Я предполагаю, что у вас есть такое же количество изображений, что и коробки? Чем вы можете перебирать этот массив.

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