C#中datagridview根据条件显示颜色的问题

我想通过datagridview中其中一列的值来判断这一行显示的颜色。数据库记录了行驶证的到期日期是2012-4-26日,根据这个条件,提前一个月提示,如果离到期日期还有... 我想通过datagridview中其中一列的值来判断这一行显示的颜色。
数据库记录了行驶证的到期日期是2012-4-26日,根据这个条件,提前一个月提示,如果离到期日期还有30天这条数据就显示黄色,还差10天就显示红色 ,字段名是行驶证的到期日期xszDate,本人不知道这个条件怎么写,请高手赐教!
   List<WhpZ> whpZ = (List<WhpZ>)whpZManager.GetWhpZ();
this.dgvZhuChe.DataSource = whpZ;//获取数据库中的数据
foreach (WhpZ wz in whpZ)
{

if (条件)
{
dgvZhuChe.CurrentRow.DefaultCellStyle.ForeColor = Color.Yellow;
}
if   (条件)
     { dgvZhuChe.CurrentRow.DefaultCellStyle.ForeColor = Color.Red;
}
}
展开
 我来答
百度网友2aa436074
2012-04-06 · 超过17用户采纳过TA的回答
知道答主
回答量:50
采纳率:0%
帮助的人:44.4万
展开全部
循环内的
这是我手写的,这种方法可以用,要是有哪里有点小问题你找找就可以用
DateTime check_in=DateTime.Now.ToString("yyyy-mm-dd");开始日期
DateTime check_out = 在datagridview取出xszDate值
TimeSpan timeSpan = new TimeSpan();
timeSpan = check_out.Subtract(check_in);
if(timeSpan == 30)
{
dgvZhuChe.CurrentRow.DefaultCellStyle.ForeColor = Color.Yellow;
}
if(timeSpan == 10)
{
dgvZhuChe.CurrentRow.DefaultCellStyle.ForeColor = Color.Yellow;
}
追问
你好,这个方法我调试的时候可以,但显示只显示datagirdview中的第一行,其他符合条件的颜色也没有变化,我把它放在load事件中对吗
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
是全能彤姐啊
2012-04-06
知道答主
回答量:61
采纳率:0%
帮助的人:25.5万
展开全部
dgvZhuChe.DataSource = whpZ;
//差异颜色显示for (int i = 0; i < dgvZhuChe.Rows.Count; i++)
{
DateTime dtime = DateTime.Parse(dgvZhuChe.Rows[i].Cells["行驶证的到期日期列"].Value.ToString()) //行驶证的到期日期列值
if (DateTime.Now.AddDays(11) == dtime )
{
grv_Result.Rows[i].Style.ForeColor = Color.Red;
}
}
追问
为什么要加AddDays(11)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
解忧解忧杂货铺
2012-04-06 · TA获得超过590个赞
知道小有建树答主
回答量:1536
采纳率:33%
帮助的人:681万
展开全部
if(当前日期.addDays(11)=你的到期时间)
30天同上
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式