Crear una columna de botones con imagen usando la clase DataGridViewButtonColumn
El link indicado está en C#, así que lo cambié a VB.Net
Private Sub DataGridView1_CellPainting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellPaintingEventArgs) _ Handles DataGridView1.CellPainting If e.ColumnIndex >= 0 AndAlso DataGridView1.Columns(e.ColumnIndex).Name = "icono" _ AndAlso e.RowIndex >= 0 Then e.Paint(e.CellBounds, DataGridViewPaintParts.All) Dim celBoton As DataGridViewButtonCell = _ TryCast(DataGridView1.Rows(e.RowIndex).Cells("icono"), DataGridViewButtonCell) Dim icoAtomico As New Icon(Environment.CurrentDirectory + "\icono.ico") e.Graphics.DrawIcon(icoAtomico, e.CellBounds.Left + 3, e.CellBounds.Top + 3) DataGridView1.Rows(e.RowIndex).Height = icoAtomico.Height + 10 DataGridView1.Columns(e.ColumnIndex).Width = icoAtomico.Width + 10 e.Handled = True End If End Sub
Nota: El icono tiene que estar en la ruta que se encuentra el ejecutable.