我在包含所述DataGridView(dgvStatsTable)的Windows窗体上有这段简单的代码:

    public void LoadStatsTable(DataTable statsTable)
    {
        dgvStatsTable.DataSource = statsTable;

        var smallFont = new Font(dgvStatsTable.Font.FontFamily, dgvStatsTable.Font.Size * 0.67f);
        dgvStatsTable.Rows[0].Cells[0].Style.Font = smallFont;
        dgvStatsTable.InvalidateCell(0, 0);

        //dgvStatsTable.Invalidate();
        dgvStatsTable.Refresh();
    }


调用该函数后,我的DataGridView包含正确的数据以供查看。
但是,我想要的样式更改未显示(右上角的第一个单元格必须具有较小的文本)。

为什么?

是因为表设置为数据源,而不是建立行和列?

谢谢!

最佳答案

该问题的解决方案是为DataGridView.CellFormatting事件编写一个处理程序。

在this MSDN article中找到。

关于c# - 如何刷新DataGridView单元格样式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3963669/

10-10 09:14