要更改DataGridView行的背景颜色并在悬停时撤消,可以通过以下步骤实现:
dataGridView1.CellFormatting += new DataGridViewCellFormattingEventHandler(dataGridView1_CellFormatting);
private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
if (dataGridView1.Columns[e.ColumnIndex].Name == "ColumnName" && e.RowIndex >= 0)
{
if (dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString() == "特定值")
{
dataGridView1.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.Red;
}
else
{
// 恢复默认背景颜色
dataGridView1.Rows[e.RowIndex].DefaultCellStyle.BackColor = dataGridView1.DefaultCellStyle.BackColor;
}
}
}
private Color defaultRowColor;
private void dataGridView1_CellMouseEnter(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex >= 0)
{
defaultRowColor = dataGridView1.Rows[e.RowIndex].DefaultCellStyle.BackColor;
dataGridView1.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.LightGray;
}
}
private void dataGridView1_CellMouseLeave(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex >= 0)
{
dataGridView1.Rows[e.RowIndex].DefaultCellStyle.BackColor = defaultRowColor;
}
}
dataGridView1.CellMouseEnter += new DataGridViewCellEventHandler(dataGridView1_CellMouseEnter);
dataGridView1.CellMouseLeave += new DataGridViewCellEventHandler(dataGridView1_CellMouseLeave);
这样,当满足特定条件时,DataGridView行的背景颜色会更改,并且在悬停时会撤消颜色更改。
对于腾讯云相关产品和产品介绍链接地址,由于要求不能提及具体品牌商,建议在腾讯云官方网站上查找相关产品,如云服务器、云数据库等,以获取更多详细信息和使用指南。
领取专属 10元无门槛券
手把手带您无忧上云