DataGridviewLinkCell-更改突出显示的单元格的前景色

时间:2019-10-21 10:09:34

标签: c# datagridview

我有一个datagridview,其中1列的类型为DataGridviewLinkColumn,链接文本为蓝色,当焦点位于单元格上时,单元格的背景色也为蓝色,这使得很难读取单元格值

使用下面的链接,当焦点位于该单元格上并且试图按预期工作时,我尝试将文本背景颜色更改为白色。

SelectionForeColor not working for link cells in DataGridViewLinkColumn of DataGridView

private void dataGridView1_SelectionChanged(object sender, EventArgs e)
{
    foreach (DataGridViewLinkCell cell in 
        ((DataGridView) sender).SelectedCells.OfType<DataGridViewLinkCell>())
    {
        if (cell.Selected)
        {
            cell.LinkColor = SystemColors.HighlightText;
        }
    }

}

private void dataGridView1_CellLeave(object sender, DataGridViewCellEventArgs e)
{
    foreach (DataGridViewLinkCell cell in
        ((DataGridView) sender).Rows[e.RowIndex].Cells.OfType<DataGridViewLinkCell>())
    {
        cell.LinkColor = cell.LinkVisited ? Color.Purple : Color.Blue;
    }
}

但是,默认情况下,当数据默认加载到Datagridview时,焦点将集中在第一个单元格上,即Row [0]中的Cell [0],在这种情况下,一旦我开始更改单元格,前景色就不会变为白色专注于工作。

在初始状态下,默认情况下如何将DataGridviewLinkColumn文本颜色设置为白色?

此外,当我将焦点更改为datagridview之外的任何其他控件时,突出显示的单元格链接文本颜色将变回蓝色。

0 个答案:

没有答案