我想在datagridview列中显示图标文件,但我遇到了一些问题:
see this pic
这是我的代码:
Icon ico = Icon.ExtractAssociatedIcon("C:/1419608299489.jpg");
DataGridViewImageColumn image = new DataGridViewImageColumn();
image.HeaderText = "Image";
image.Icon = ico;
dataGridView1.Columns.Add(image);
答案 0 :(得分:0)
我认为这就是你要搜索的内容(见dataGridView Image not displaying):
Icon icon = Icon.ExtractAssociatedIcon(@"filepath");
List<MyItem> items = new List<MyItem>();
for (int i = 0; i < 10; i++)
{
items.Add(new MyItem { Key = i, value = icon.ToBitmap() });
}
this.dataGridView1.AutoGenerateColumns = false;
this.dataGridView1.Columns.Clear();
this.dataGridView1.Columns.Add("Key", "Key");
this.dataGridView1.Columns.Add(new DataGridViewImageColumn() { HeaderText = "Status" });
this.dataGridView1.Columns[0].DataPropertyName = "Key";
this.dataGridView1.Columns[1].DataPropertyName = "value";
this.dataGridView1.DataSource = items;
和 MyItem 是......像这样:
class MyItem
{
public int Key { get; set; }
public Image value { get; set; }
}
结果:
答案 1 :(得分:0)
检查以下内容:
如果上述情况属实,请尝试将文件复制到项目中。我实际上并不理解为什么要将图像文件保留在项目之外。这进一步简化了事情,因为您可以使用相对路径来访问文件。