【发布时间】:2015-04-08 08:03:13
【问题描述】:
我有一个看似简单的问题,我已经动态地创建了一个 DataTable,并且我向它添加了行就好了。但是,我有一列会有一个图像标志。我已经将这两个标志(.png 图像)导入到项目资源中。但是,我无法将列的 DataType 设置为 System.Type.Bitmap,因为 DataColumn 不支持这一点,可以在此处看到。我看到一个解决方案说我将 DataType 设置如下
dataColumn = new DataColumn("Flag");
dataColumn.DataType = System.Type.GetType("System.Byte[]"); //Replacing System.Byte[] with System.Type.Bitmap throws Type Exception
dataTable.Columns.Add(dataColumn);
但是,这会引发异常,说明编译器需要 Byte[] 但得到了位图。
这是我向 DataTable 添加行的方法
row["Part Number"] = part;
row["Module Name"] = populator.LookUpAValue(moduleSql);
row["Flag"] = Properties.Resources.Yellow_Flag;
row["Location"] = populator.LookUpAValue(nameSql);
dataTable.Rows.Add(row);
这是我的问题,我应该使用哪种 DataType 保存图像列,因此当我显示到 DataGridView 时,我会看到显示的图像。没有在 DataGridView 上设置 DataType 而不是显示图像,我得到文本
System.Drawing.Bitmap
【问题讨论】:
标签: c# datagridview datatable datagridviewcolumn datacolumn