i want change color of grdiview cell based on condition , condition if passport expire in 1 month or if expired want check both condition if going expire or if expired want change color red. thanks
protected void onrowdatabound_gvpass(object sender, gridviewroweventargs e) { datetime todaysdate = datetime.now.date; if (e.row.rowtype == datacontrolrowtype.datarow) { label lblpassportexpdate = (label)e.row.findcontrol("passportexpdate"); datetime passportexpdatedate = datetime.parse(lblpassportexpdate.text); if (passportexpdatedate < datetime.today || passportexpdatedate < todaysdate.adddays(30)) { //e.row.backcolor = system.drawing.color.red; gvdriverstatus.columns[3].itemstyle.forecolor = system.drawing.color.red; } } }
here's simplified piece of code worked me , adapt case:
protected void page_load(object sender, eventargs e) { refdate = new datetime(1996, 7, 15); } protected void gridview1_rowdatabound(object sender, gridviewroweventargs e) { if (e.row.rowindex >= 0) { if (datetime.parse(e.row.cells[3].text) < refdate) { e.row.cells[3].backcolor = color.red; } } } this result get:

note i'm using hard coded refdate of 07/15/1996, makes sense data in local database.
edit: made interval, little more interesting:
protected void page_load(object sender, eventargs e) { mindate = new datetime(1996, 7, 7); maxdate = new datetime(1996, 7, 15); } protected void gridview1_rowdatabound(object sender, gridviewroweventargs e) { if (e.row.rowindex >= 0) { var curdate = datetime.parse(e.row.cells[3].text); if (mindate < curdate && curdate < maxdate) { e.row.cells[3].backcolor = color.red; e.row.cells[3].forecolor = color.white; } } } 
Comments
Post a Comment