Как изменить цвет ячейки DataGridView, содержащей определенное значение [duplicate]

Имейте в виду, что независимо от сценария причина всегда одинакова в .NET:

Вы пытаетесь использовать ссылочную переменную, значение которой Nothing / null. Если для ссылочной переменной значение Nothing / null, это означает, что на самом деле оно не содержит ссылку на экземпляр любого объекта, который существует в куче.

Вы либо никогда не присваивали какую-либо переменную, никогда не создавали экземпляр значения, присвоенного переменной, или вы вручную устанавливали переменную, равную Nothing / null, или вы вызывали функцию, которая установите для этой переменной значение Nothing / null.

11
задан KevinDeus 1 November 2010 в 07:41
поделиться

2 ответа

Вы можете использовать событие CellFormatting для DataGridView. DataGridViewCellFormattingEventArgs содержит индексы строки и столбца текущей ячейки, поскольку она привязана. Надеюсь, мой пример кода имеет для вас некоторое значение:

private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
    // Compare the column to the column you want to format
    if (this.dataGridView1.Columns[e.ColumnIndex].Name == "ColumnName")
    {
        //get the IChessitem you are currently binding, using the index of the current row to access the datasource
        IChessItem item = sourceList[e.RowIndex];
        //check the condition
        if (item == condition)
        {
             e.CellStyle.BackColor = Color.Green;
        }
    }
}
23
ответ дан Edwin de Koning 26 August 2018 в 09:18
поделиться

Вы можете заполнять данные в своем DataGridView с помощью любого цикла или источника данных. Затем для каждого DataGridViewRow в DataGridView1.Rows ----

Chk значение ref ypu хочет chk, а затем установить свойство DataGridviewCell [index] .style.backColor.

0
ответ дан Srabanjit 26 August 2018 в 09:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: