Я думаю, что если вы прокомментируете свою строку rr.nColumn = 2
, код будет интерпретирован как
if (rr.nRow == 1 && rr.nColumn == 2)
{
if (rr.nColumn == -1)
dgvResults.Rows[rr.nRow].DefaultCellStyle.BackColor = Color.Yellow;
else
dgvResults.Rows[rr.nRow].Cells[rr.nColumn].Style.BackColor = Color.Salmon;
}
, и тогда BackColor на [1,2] не будет установлен должным образом.
@ DaBlue, как вы говорите в комментариях, нет мой код не интерпретируется, как это, пожалуйста, попробуйте следующее
if (false)
MessageBox.Show("1"); // If I leave this in it works, if I remove it the single cell is not colored
if (true)
MessageBox.Show("2");
else
MessageBox.Show("3");
В этом случае будет показано «2», а затем попробуйте следующий код
if (false)
//MessageBox.Show("1"); // If I leave this in it works, if I remove it the single cell is not colored
if (true)
MessageBox.Show("2");
else
MessageBox.Show("3");
на этот раз вы не увидите всплывающее окно
ИМХО, вы всегда должны использовать фигурные скобки, даже если это «одна строка»