3
我有一个带有DatagridViewImage
列的表单。此列将加载2个system.byte()类型的图像。更改datagridview单元格上的system.byte()值点击
如何将DataGridview上的图像值从图像1更改为图像2,反之亦然?
我有一个带有DatagridViewImage
列的表单。此列将加载2个system.byte()类型的图像。更改datagridview单元格上的system.byte()值点击
如何将DataGridview上的图像值从图像1更改为图像2,反之亦然?
这可能会为你工作:
我装2个图像
我创建了一个DataGridViewImageColumn和设置名称和HEADERTEXT到图像
我加入了DataGridViewImageColumn到DataGridView
我订阅了DataGridView的单元格单击事件
在我检查,看看是否被点击的细胞是在图像列
细胞click事件如果细胞是在图像列我切换了图像。
下面是代码:
private Image image1 = Bitmap.FromFile("C:/Image1.png");
private Image image2 = Bitmap.FromFile("C:/Image2.png");
public void dgvInit()
{
DataGridViewImageColumn imgColumn = new DataGridViewImageColumn();
imgColumn.Name = "images";
imgColumn.HeaderText = "images";
imgColumn.Image = this.image1;
this.dataGridView1.Columns.Add(imgColumn);
this.dataGridView1.Rows.Add(new DataGridViewRow());
this.dataGridView1.CellClick += new
DataGridViewCellEventHandler(dataGridView1_CellClick);
}
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (this.dataGridView1.Columns[e.ColumnIndex].HeaderText == "images")
{
DataGridViewImageColumn imgColumn =
(DataGridViewImageColumn)this.dataGridView1.Columns[e.ColumnIndex];
if (imgColumn.Image == this.image1) imgColumn.Image = image2;
else imgColumn.Image = image1;
}
}