在DataGridViewImageColumn中设置图标的大小

时间:2013-09-20 15:25:47

标签: c# datagridview icons

我正在尝试在datagridview中的列中设置图标的大小:

// .. previous code to fill a dataset with rows of data ...
// Assign dataset into the DataGridView
this.dataGridView1.DataSource = thisDataSet.Tables[0];
// Create icon resource
Icon icon1 = new Icon(SystemIcons.Exclamation, 8, 8);            
// Create a column to hold an icon
DataGridViewImageColumn img = new DataGridViewImageColumn(true);
// Set icon for all rows in the column
img.Icon = icon1; 
// Add column to right side of the DataGridView
this.dataGridView1.Columns.Add(img);
// Move it to the beginning (left side)
this.dataGridView1.Columns[this.dataGridView1.Columns.Count - 1].DisplayIndex = 0;

我的DataGridView显示正常,左侧有一列,每行都有一个图标。所有图标都具有与预期相同的尺寸,但即使我指定了自己的尺寸,它们也看起来太大而不能是8x8像素。如何控制图标大小?

2 个答案:

答案 0 :(得分:2)

由于某些原因,Size构造函数中传递的Icon 被忽略,我认为您可以尝试使用Image属性,而不是这样:

img.Image = new Bitmap(SystemIcons.Exclamation.ToBitmap(), 8, 8);

答案 1 :(得分:1)

您需要将ImageLayout属性设置为Normal。

DataGridViewImageColumn.ImageLayout = DataGridViewImageCellLayout.Normal