2012-04-27 3 views
0

Играла с пользовательским интерфейсом моей программы и имела небольшую функцию, которая сравнивается с ячейками в одной строке и присваивает цвет этой ячейке. Теперь я хочу просто добавить стрелку UP или DOWN в эту ячейку. К сожалению, кажется, нет ни одного лайнера, который мне трудно поверить.C# добавить изображение в ячейку динамически

Вот мой текущий код:

DataGridViewImageCell p1 = new DataGridViewImageCell(); 

ParetoGrid.Columns.Add(new DataGridViewColumn() { CellTemplate = p1, FillWeight = 1, HeaderText = "p1", Name = "p1", Width = 30}); 




private void ShowArrow() 
    { 
     foreach (DataGridViewRow paretoRow in ParetoGrid.Rows) 
     { 
      if ((paretoRow.Cells["Pareto6"].Value != null) && (Convert.ToInt32(paretoRow.Cells["CurrentPareto"].Value) < (Convert.ToInt32(paretoRow.Cells["NewPareto"].Value)))) 
      { 
       paretoRow.Cells["p1"].Value = //image?; 
      } 
      else if ((paretoRow.Cells["Pareto6"].Value != null) && (Convert.ToInt32(paretoRow.Cells["CurrentPareto"].Value) > (Convert.ToInt32(paretoRow.Cells["NewPareto"].Value)))) 
      { 
       ParetoGrid.Rows[paretoRow.Index].DefaultCellStyle.BackColor = Color.LightGreen; 
      } 


     } 
    } 

Im надеясь, что кто знает, что есть один вкладыш. О, и в столбце, который я хочу добавить, тоже есть DataGridViewImageCell.

Большое спасибо!

до сих пор я просто создать новый образ, а затем

paretoRow.Cells["p1"].Value = theImage; 

Проблема я получаю ERROR: отформатированный клетка имеет неправильный тип!

ответ

0

Вы должны использовать DataGridTemplateColumn, содержащий элемент управления изображением. Общая колонка не поддерживает отображение изображения.

+0

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

+0

или вы хотите заменить DataGridViewImageCell на это? – lemunk

+0

Я забыл, что столбец также должен быть типа изображения, эта проблема разрешена – lemunk

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