星期三, 1月 03, 2024

[C#] Header 背景顏色

每隔一段時間遇上要變更 DataGridView ColumnHeader 背景顏色時就會鬼打牆一段時間,筆記設定方式 

.NET Framework 或 .NET 8 程式啟動時,預設都開有該設定
Application.EnableVisualStyles();
而 DataGridView 內的 Header 也有該設定,要把該 Visual Styles 設定關閉後,才能變更 ColumnHeader、RowHeader 背景顏色
namespace CellHeaderColor
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            // 關閉 Headers Visual Styles
            dataGridView1.EnableHeadersVisualStyles = false;

            // 設定 ColumnHeader 預設背景顏色
            dataGridView1.ColumnHeadersDefaultCellStyle.BackColor = Color.LightGray;

            // 設定 RowHeader 預設背景顏色
            dataGridView1.RowHeadersDefaultCellStyle.BackColor = Color.Yellow;   

            // 設定欄位背景顏色 1
            dataGridView1.Columns[Column2.Index].HeaderCell.Style.BackColor = Color.LightBlue;

            // 設定欄位背景顏色 2
            Column4.HeaderCell.Style.BackColor = Color.LightPink;
        }
    }
}

沒有留言:

張貼留言