在我的Windows窗体中,我从MS Access数据库中获取了一个dataGridView,它有一个包含TaskDate和TaskTime的两列。 TaskDate(数据类型=日期时间)仅保存日期,而TaskTime(数据类型=日期时间)仅保留时间。现在在datagridview cellformating事件中,我希望基于两个条件当前日期和当前时间与系统日期和时间一致,使标签可见(标签的可见性在表单加载时为false)。下面是我尝试过的代码,它不会抛出错误,但它甚至不会使标签可见。急需帮助:(
foreach (DataGridViewRow row1 in dataGridView1.Rows)
{
DateTime rowtype1 = Convert.ToDateTime(row1.Cells["TaskDate"].Value);
DateTime rowtype2 = Convert.ToDateTime(row1.Cells["TaskTime"].Value);
// Time formt is dataGridView1.Columns["TaskTime"].DefaultCellStyle.Format = @"hh\:mm";
if (rowtype1 == DateTime.Today && rowtype2 > DateTime.Now)
{
// label6 visibile property is false on form load
label6.Visible = true;
label6.Text = "Its time now";
}
}
答案 0 :(得分:1)
如果您愿意仅比较DateTime
的时间部分。比较两个TimeOfDay
结构的DateTime
属性。
rowtype2.TimeOfDay > DateTime.Now.TimeOfDay