按日期范围过滤WinForms DataGridView

时间:2013-05-06 08:23:25

标签: c# winforms visual-studio-2005

我想按照下面列出的日期范围过滤我的DataGridView。

我有一个ListBox,其中包含2个包含开始日期和结束日期的项目。列表框中的开头日期位于顶部,结束日期。

listbox = lbSearchByTime

列表框

DataGridView with column named 'DATE'

DataGridView,其日期列名为'DATE'

注意:我的DataGridView和ListBox中的所有DateTime格式都是dd/MM/yyyy,例如:05/23/2013

Filter = "(DATE >= '" + lbSearchByTime.Items[0].ToString().Trim() + 
         "and DATE <= '" + lbSearchByTime.Items[1].ToString().Trim() + "')";

Filter = "(DATE >= '" + Convert.ToDateTime(lbSearchByTime.Items[0].ToString().Trim()) +
         and "DATE <= '" + Convert.ToDateTime(lbSearchByTime.Items[1].ToString().Trim()) + "')";

这两个代码对我不起作用。是格式错误还是其他什么? 按button_click执行过滤时没有任何变化。

1 个答案:

答案 0 :(得分:1)

        if (lbSearchByTime.Items.Count == 2)
        {
            DateTime start = stringToDateTime(lbSearchByTime.Items[0].ToString().Trim());
            DateTime end = stringToDateTime(lbSearchByTime.Items[1].ToString().Trim());

            Filter = "(DATE101 >= #" + start + "# and DATE101 <= #" + end + "#)";
        }