今天按照需求做了一个从后台构造出DataGridView,然后根据不同的条件让其显示的颜色也要有变化,目的是更人性化点。 虽说这不是很强大的功能,但也是个不小的积累,以此分享给跟我一样的新手们。程序之路共勉! 废话不说了,开始: 首先获取一个DataTable并且设置下表头,之后开始循环遍历DataTable里的数据并添加到DataGridView里面。看代码: 代码 //把获取到的所有数据赋给一个DataTable dd_table = _objuser.GetAllLoanOrder(UserInfo.uPara1); //清除原有的行和列 dataGridView1.Rows.Clear(); dataGridView1.Columns.Clear(); //构造DGV 设置表头 dataGridView1.Columns.Add("操作", "操作"); dataGridView1.Columns.Add("订单编号", "订单编号"); dataGridView1.Columns.Add("商户", "商户"); dataGridView1.Columns.Add("当前状态", "当前状态"); dataGridView1.Columns.Add("是否通过审核", "是否通过审核"); dataGridView1.Columns.Add("保证金百分比", "保证金百分比"); dataGridView1.Columns.Add("手续费", "手续费"); DataGridViewRow new_row = null; //循环dt_list行,dgv填充de_list各行数据 for (int i = 0; i < dd_table.Rows.Count; i++) { new_row = new DataGridViewRow(); //循环DGV的列,为new_row各单元格定义其单元格类型 (让列表的第一行显示个【操作】按钮) for (int j = 0; j < dataGridView1.Columns.Count; j++) { if (j != 0) { new_row.Cells.Add(new DataGridViewTextBoxCell()); } else { new_row.Cells.Add(new DataGridViewButtonCell()); } } //填充该数据行的值 new_row.SetValues("操作", dd_table.Rows[i]["订单编号"].ToString(), dd_table.Rows[i]["商户"].ToString(), dd_table.Rows[i]["当前状态"].ToString(), dd_table.Rows[i]["是否通过审核"].ToString(), dd_table.Rows[i]["保证金百分比"].ToString(), dd_table.Rows[i]["手续费"].ToString(), ); //DGV中添加新的数据行 dataGridView1.Rows.Add(new_row); //下面开始设置各行的颜色 int loischeck = Convert.ToInt32(dd_table.Rows[i]["loIsCheck"]); //获取是否通过审核 if (loischeck == 0) //没有通过审核 以红色显示 this.dataGridView1.Rows[i].DefaultCellStyle.ForeColor = Color.Red; if (loischeck == 1) //通过审核 以绿色显示 this.dataGridView1.Rows[i].DefaultCellStyle.ForeColor = Color.Green; } 注意:一定要在添加新的数据行 后才可以设置该行的颜色,否则一直会报索引错误! |
|
来自: 绚爷好人图书馆 > 《又是Winfrom》