我试图以编程方式更改DataGridViews
"单元格标题"字体样式Col 标题必须是大写的,我想分配一种新字体。如果有人以前这样做过,我将感谢您在这里的指导。
更新
实际上字体更改工作正常,这只是我需要帮助headerText.ToUpper()
private void dataGridView1_Painting(object sender, DataGridViewCellPaintingEventArgs e)
{
//Something like this.
foreach(DataGridViewColumnCollection c in grd.Columns) {
c.ColHeading.Text = c.ColHeading.Text.ToUpper();
}
//or
//header row only
if (e.RowIndex == -1)
{
e.CellStyle.Font = new Font("Verdana", 11.0f);
e.CellStyle.ForeColor = Color.Gray;
e.Value = e.Value.ToUpper(); //fails as its a read only object
}
}
不熟悉此控件,但浏览其他事件。 可能没有足够早地进行此更改,并且通过"更早"的事件有更好的运气。
行或列本身上可能存在一些事件,您应该连接到这些事件来完成此操作。
IEnumerable的解决方案根据评论:
dataGridView1_ColumnAdded(object sender, DataGridViewColumnEventArgs e) { e.Column.HeaderText = e.Column.HeaderText.ToUpper(); }