プログラムでセルのフォントの色を設定する必要がある C# Winforms アプリケーションがあります。条件が満たされた場合、フォントは赤になります。状態チェックが正しいことを確認しました。問題は行にあります
dgv_Table.Rows[cell.RowIndex].Cells[cell.ColumnIndex].Style.ForeColor = Color.Blue;
「セル」は、現在チェックしているセルです。これはまったく何もしません。ループから取り出して次のように確認しても、
dgv_Table.Rows[0].Cells[0].Style.ForeColor = Color.Blue;
それでも何もしません。コード行は、Main() 中に呼び出されるヘルパー関数にあります。
DefaultCellValue を設定すると、ビューが変更されますが、私が望むものではありません。
private void Main_Load(object sender, EventArgs e)
{
dgv_Table.Rows[0].Cells[0].Style.ForeColor = Color.Blue;
dgv_Table.Rows[0].Cells[0].Style.BackColor = Color.Black;
foreach (DataGridViewRow row in dgv_Table.Rows)
{
foreach (DataGridViewCell cell in row.Cells)
{
cell.Style.BackColor = Color.Black;
if (cell.OwningColumn.Name == "RiskName" && cell.Value.ToString() != "")
{
string wholeText = cell.Value.ToString();
int score = Convert.ToInt32(wholeText.Substring(wholeText.IndexOf("[") + 1, wholeText.IndexOf("–") - 1));
if (score > 300)
{
dgv_Table.Rows[cell.RowIndex].Cells[cell.ColumnIndex].Style.ForeColor = Color.Blue;
}
}
}
}
}