興味深い問題があります。datatable を datagridview のデータ ソースとして使用しようとしています。テーブルの一部のセルに色を付けて、さまざまなことを示したいのですが、何らかの理由で色が表示されません。したがって、次のコードは無色のセルを示しています。
dataGridView1.DataSource = table;
dataGridView1.Rows[0].Cells[0].Style.BackColor = Color.Yellow;
最初のフォームのロード後に表示する色しか取得できません (たとえば、OnClick イベントでセルの色を設定するなど)。ただし、以下のコードのようにビューの行と列を明示的に作成すると、色付けが機能します。
foreach (DataColumn col in table.Columns)
dataGridView1.Columns.Add(col.ColumnName, col.ColumnName);
for (int i = 0; i < table.Rows.Count; i++)
{
var row = table.Rows[i];
object[] values = new object[table.Columns.Count];
for (int x = 0; x < table.Columns.Count; x++)
values[x] = row[x].ToString();
dataGridView1.Rows.Add(values);
}
dataGridView1.Rows[0].Cells[0].Style.BackColor = Color.Yellow;
私はこの方法でコードを持ちたくありません。ここで何が起こっているのか、私が細胞を着色するのを妨げていることを誰か知っていますか?