C#动态地将图像添加到单元格

时间:2012-04-27 08:39:24

标签: c# image datagridview

一直在玩我的程序的UI,并且有一个小功能,可以与同一行的单元格进行比较,并为该单元格指定颜色。 我现在真正想要的是简单地向该单元格添加图像向上或向下箭头。不幸的是,似乎没有一个我很难相信的衬垫。

这是我目前的代码:

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;
            }


        }
    }

我希望有人知道有一个班轮。哦,我想要添加图像的列是DataGridViewImageCell。

非常感谢!

到目前为止,我只是创建一个新的图像然后

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

我得到的问题是错误:格式化单元格类型错误!

1 个答案:

答案 0 :(得分:0)

你应该使用DataGridTemplateColumn包含图像控件。常规栏不支持显示图像。