我在DatagridView
中显示了一些行,它们将第一列设置为ImageandText.when用户选择任何一行,直到具有文本部分的单元格保持图像背景为白色。用于DataGridView中的第一单元显示所述图像和文本在ImageandText中只选择文本Datagridview列
代码:
private void dgvLogDetails_CellPainting(object sender,
DataGridViewCellPaintingEventArgs e)
{
if (e.RowIndex >= 0 && e.ColumnIndex == 0)
{
e.PaintBackground(e.ClipBounds, true);
PointF p = e.CellBounds.Location;
e.CellStyle.SelectionBackColor = Color.White;
p.X += imgList.ImageSize.Width+8;
e.Graphics.DrawImage(imgList.Images[1], e.CellBounds.X+4,
e.CellBounds.Y, 16, 16);
e.Graphics.DrawString(e.Value.ToString(),
e.CellStyle.Font, Brushes.Black, p);
e.Handled = true;
}
}
上述代码选择,如下面图中所示的完整细胞(图像和文本):
我想有像在下面的图片[预计]:
尝试斯利拉姆代码,它是如下显示:
我不知道,但我想'ListView'默认情况下将有你问的功能。如果可行,你可以使用'ListView'。 – 2014-09-19 11:32:41
实际上我所显示的预期图像是使用'ListView'创建的。现在我正在改变它'DataGridView' – 2014-09-19 11:45:41
哦,忽视我的评论然后,看看我的答案是否有帮助。 – 2014-09-19 11:58:15