Объединенное изображение из списка<Bitmap> изображений, не отображаемых в ImageColumn
В моем текущем проекте есть несколько случаев, когда требуется ряд индикаторов (с использованием иконок PNG 26x26). В этом случае это DataGridView
(более конкретно, Telerik RadGridView
). Изображения загружаются из файла ресурсов и присутствуют.
Мой текущий код определяет эти индикаторы при создании строки:
Bitmap indicators;
List<Bitmap> content = new List<Bitmap>();
if (l.Condition1 == true)
content.Add(myProj.Properties.Resources.One);
if (l.Condition2 == true)
content.Add(myProj.Properties.Resources.Two);
if (l.Condition3 == true)
content.Add(myProj.Properties.Resources.Three);
if (content.Count() != 0)
{
int width = content.Select(w => w.Width).Sum();
indicators = new Bitmap(width, 26);
using (Graphics g = Graphics.FromImage(indicators))
{
int origin = 0;
foreach (Bitmap p in content)
{
g.DrawImage(p, new Point(origin, 0));
origin += p.Width;
}
row.Cells[15].Value = indicators;
}
}
К сожалению, этот код не работает (изображения не отображаются вообще), и я не могу разобраться, что я пропустил. Присвоение изображения Value
свойство работает, если я просто загружаю одно изображение и не использую цикл. Что я упустил из виду, что мешает этому работать и показывать эти индикаторы?