Посмотрите на свойство DataGridViewCell.ToolTipText и используйте событие DataGridView CellFormatting
, чтобы установить значение этого свойства.Вы можете использовать свойство DataGridViewCellFormattingEventArgs
ColumnIndex
события, чтобы определить, запускается ли событие для столбца, для которого вы хотите установить подсказку, и если это так, используйте RowIndex
события, чтобы указать значение этой подсказки.
Пример в статье MSDN, которую я связал, имеет прекрасный пример использования, но ваш код может выглядеть примерно так:
private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) {
if (e.ColumnIndex == dataGridView1.Columns[nameOrIndexOfYourImageColumn].Index) {
var cell = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex];
// Set the Cell's ToolTipText. In this case we're retrieving the value stored in
// another cell in the same row (see my note below).
cell.ToolTipText = dataGridView1.Rows[e.RowIndex].Cells[nameOrIndexOfYourDescriptionColumn].Value.ToString();
}
}
Где:
nameOrIndexOfYourImageColumn
= имя столбца или значение индексавашего столбца изображения nameOrIndexOfYourDescriptionColumn
= имя столбца или значение индекса с вашими данными описания.
Примечание: вам понадобится какой-то способ получить данные описания строки.Обычный способ сделать это - иметь столбец для этого в вашем DataGridView, но сделайте так, поскольку вы не хотите отображать этот столбец, установите для его свойства Visible
значение false.Однако есть и другие варианты.