Use a standard DataGridViewImageColumn
to display the images, then create a DataGridView_CellMouseMove
event for the DataGridView
with the following code
private void DataGridView1_CellMouseMove(object sender, DataGridViewCellMouseEventArgs e)
{
if (e.ColumnIndex == DataGridViewImageColumn1.Index)
{
Cursor = Cursors.Hand;
}
else
{
Cursor = Cursors.Default;
}
}
Add logic to detect rows if required.
The DataGridView_CellMouseClick
events will still be needed for your links.
And you may also need a DataGridView_MouseLeave
event to ensure that you set the Cursor
back to the default.