I have datagridview whose datasource is datatable.
I have two columns in datagridview:
NAME, IN TIME
After the datagridview is loaded, I want to add
You can add a string column to DataTable
and use it as duration column. Then you can subscribe to Tick
event of a timer which you set it's interval to 1000 and show the result of count down timer in duration column:
void timer_Tick(object sender, EventArgs e)
{
foreach( DataRow row in YourDataTable.Rows)
{
var diff = row.Field<DateTime>("DateTimeColumn").Subtract(DateTime.Now);
if(diff.TotalSeconds>0)
{
row["DurationColumn"] = string.Format("{0} d {1:D2}:{2:D2}:{3:D2}",
diff.Days, diff.Hours, diff.Minutes, diff.Seconds);
}
else
{
row["DurationColumn"] = "0 d 00:00:00";
}
}
}