我有一个datagridview,它是通过读取XML文件中的数据来填充的。 datagridview有列 - 模块,描述,截止日期和优先级。 截止日期栏采用以下格式,例如2012年2月12日,它以字符串形式保存到XML文件中。在2个日期时间选择器之间过滤datagridview截止行
在DGV旁边,我有2个datetimepickers - startDate和endDate。
用户选择开始和结束日期,然后按过滤器按钮。一旦他们这样做,DGV应只显示截止日期列在开始日期和结束日期之间的行。
我认为这会比较简单,但我认为我有问题转换。 当我按下过滤器按钮时,else语句正在启动。
这是我到目前为止的代码,抱歉,如果它有点混乱。
private void scheduleButton_Click(object sender, EventArgs e)
{
DateTimePicker startDate = new DateTimePicker();
DateTimePicker endDate = new DateTimePicker();
String startDateConverted = Convert.ToString(startDate.Value);
String endDateConverted = Convert.ToString(endDate.Value);
foreach (DataGridViewRow dr in TaskTable2.Rows)
{
String deadlineRow = dr.Cells["Deadline"].Value.ToString();
if (startDateConverted<= deadlineRow && deadlineRow<= endDateConverted)
{
MessageBox.Show("Display Row"); // display filtered rows here.
}
else
{
MessageBox.Show("Please ensure start date is set before end date and that there is a task saved between the dates you selected.");
}
}
}
if语句中的代码应该是显示过滤行的代码,但我也不知道如何对代码进行编码。
如果有人可以修改我的代码,并帮助我解决这个问题,将不胜感激。
,谢谢,我已经编辑在if语句 – Rob 2012-03-08 16:10:03
我仍然有比较不同日期的问题。开始日期和结束日期采用日期时间格式,由于某种原因,两者都具有当前时间的值。需要与开始日期和结束日期进行比较的DeadlineRow是“2012年3月12日”格式的字符串等。关于如何使3个日期能够进行比较的任何想法? – Rob 2012-03-08 16:14:05
将它们与DateTime.Now比较,并从这里派生出你的逻辑? – Andrew 2012-03-08 16:58:53