我有一个看似简单的问题,我已经动态地创建了一个DataTable,并向它添加行就好了。不过,我有一个列将有一个标志,这是一个图像。我已经将两个标志(.png图像)导入到项目资源中。但是我无法将DataType设置为System.Type.Bitmap,因为DataColumn不支持,因为可以在这里看到。我看到了一个解决方案,说我设定数据类型如下用于将图像保存在DataTable的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);
然而抛出异常,说明编译器预计字节]但得到的位图。
这是我如何添加到数据表
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);
行这里是我的问题,其数据类型我保存图像列,所以当我展示给一个DataGridView我看到显示的图像。如果没有在DataGridView的,而不是被显示的图像设置数据类型,我得到的文本 System.Drawing.Bitmap