2013-07-01 46 views

回答

3

这可能会为你工作:

  1. 我装2个图像

  2. 我创建了一个DataGridViewImageColumn和设置名称和HEADERTEXT到图像

  3. 我加入了DataGridViewImageColumn到DataGridView

  4. 我订阅了DataGridView的单元格单击事件

  5. 在我检查,看看是否被点击的细胞是在图像列

  6. 细胞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; 
    } 
} 
相关问题