读书人

dataGridView中值变化的有关问题

发布时间: 2012-03-27 13:44:24 作者: rapoo

dataGridView中值变化的问题
写一段代码,TablesB3中如果“A1”列中的值有变化,则同一行的“A2”列单元格赋值为“OK”

C# code
        void TablesB3_ColumnChanged(object sender, DataColumnChangeEventArgs e)        {            if (e.Column.ColumnName == "A1")            {                  e.Row["A2"] = "OK";                  this.dataGridView1.UpdateCellValue(this.dataGridView1.Columns["A2"].Index, this.dataGridView1.CurrentRow.Index);                        }        }

我还想在变化后dataGridView1中对应的单元格字体颜色变为红色,但没有成功:
C# code
        private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)        {            if (e.ColumnIndex == dataGridView1.Columns["A2"].Index)            {                dataGridView1.Rows[e.RowIndex].Cells["A2"].Style.ForeColor = Color.Red;            }        }


请给指点一下,谢谢。

[解决办法]
用单元格格式化事件
CellFormating
[解决办法]
CellFormatting
[解决办法]
所有行:
dataGridView1.RowsDefaultCellStyle.Font = new Font("宋体", 9, FontStyle.Strikeout);
dataGridView1.RowsDefaultCellStyle.ForeColor = Color.Blue;
dataGridView1.RowsDefaultCellStyle.BackColor = Color.Red;
选中行
dataGridView1.SelectedRows[0].DefaultCellStyle.Font = new Font("宋体", 9, FontStyle.Strikeout);
dataGridView1.SelectedRows[0].DefaultCellStyle.ForeColor = Color.Blue;
dataGridView1.SelectedRows[0].DefaultCellStyle.BackColor = Color.Red;

[解决办法]
CellFormating事件,只要符合条件,就格式化你需要的单元格

读书人网 >C#

热点推荐