分享

后台构造DataGridView,并且根据不同条件显示不同颜色

 绚爷好人图书馆 2014-11-13
今天按照需求做了一个从后台构造出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;
}

注意:一定要在添加新的数据行 后才可以设置该行的颜色,否则一直会报索引错误!      

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约