How do I make the datagridview line text in bold when I pick a row?
Handle the CellFormatting event of the DataGridView and apply a bold style to the font if the cell belongs to a selected row:
private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
var dataGridView = sender as DataGridView;
if (dataGridView.Rows[e.RowIndex].Selected)
{
e.CellStyle.Font = new Font(e.CellStyle.Font, FontStyle.Bold);
// edit: to change the background color:
e.CellStyle.SelectionBackColor = Color.Coral;
}
}
The below code will make the font under Bold style for the selected row. "Total" is the last row check in my code
protected void gvRow_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.Cells[rowIndex].Text == "Total")
{
e.Row.Font.Bold = true;
}
}
}
Try to handle SelectionChanged
event of dataGridView and set cell
style.
After loading the contents in Datagrid, apply these event handlers to RowEnter and RowLeave.
private void dg_RowEnter(object sender, DataGridViewCellEventArgs e)
{
System.Windows.Forms.DataGridViewCellStyle boldStyle = new System.Windows.Forms.DataGridViewCellStyle();
boldStyle.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold);
dg.Rows[e.RowIndex].DefaultCellStyle = boldStyle;
}
private void dg_RowLeave(object sender, DataGridViewCellEventArgs e)
{
System.Windows.Forms.DataGridViewCellStyle norStyle = new System.Windows.Forms.DataGridViewCellStyle();
norStyle.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular);
dg.Rows[e.RowIndex].DefaultCellStyle = norStyle;
}
Codes are not tested. But it should work fine.
Hope it helps.