C# DataGridView按日期的行筛选器

C# DataGridView按日期的行筛选器,c#,datetime,datagridview,datatable,rowfilter,C#,Datetime,Datagridview,Datatable,Rowfilter,我的dataGridView\u-flaggedComments有10行。Comments\u Date列单元格中的值以31/12/2014 12:01 PM的格式显示日期,如果我从comboBox\u stockDates(例如31/12/2014)中选择一个日期(没有时间部分),我希望它过滤(并显示)所有包含31/12/2014 xx:xx的行 即使所选日期(如2014年12月31日)与包含2014年12月31日xx:xx的行匹配,以下代码也将产生零结果。知道这里出了什么问题吗 string

我的
dataGridView\u-flaggedComments
有10行。
Comments\u Date
列单元格中的值以
31/12/2014 12:01 PM
的格式显示日期,如果我从
comboBox\u stockDates
(例如31/12/2014)中选择一个日期(没有时间部分),我希望它过滤(并显示)所有包含
31/12/2014 xx:xx
的行

即使所选日期(如2014年12月31日)与包含
2014年12月31日xx:xx
的行匹配,以下代码也将产生零结果。知道这里出了什么问题吗

string dtFilter = string.Format("Comments_Date = #{0}#", comboBox_stockDates.SelectedItem.ToString());
(dataGridView_flaggedComments.DataSource as DataTable).DefaultView.RowFilter = dtFilter;
或者,是否有方法将两个日期转换为字符串,然后进行比较?我尝试使用LIKE运算符,但错误表示不能用于比较DateTime和字符串


任何帮助和指导都将不胜感激!谢谢。:)

我已经解决了这个问题,所以我提出了自己的答案。这可能对将来寻找类似问题的人有所帮助

string str = comboBox_stockDates.SelectedItem.ToString();
DateTime date = DateTime.ParseExact(str, "dd/MM/yyyy", CultureInfo.GetCultureInfo("en-GB"));
string dtFilter = string.Format(
    "[Comments_Date] >= '{0} 12:00:00 AM' AND [Comments_Date] <= '{0} 11:59:59 PM'", date.ToString("dd/MM/yyyy"));
(dataGridView_flaggedComments.DataSource as DataTable).DefaultView.RowFilter = dtFilter;
string str=comboBox\u stockDates.SelectedItem.ToString();
DateTime date=DateTime.ParseExact(str,“dd/MM/yyyy”,CultureInfo.GetCultureInfo(“en-GB”);
string dtFilter=string.Format(

“[Comments\u Date]>='{0}12:00:00 AM'和[Comments\u Date]例如,您可以这样做
string dtFilter=string.Format(“Comments\u Date={0}”、DateTime.Now.ToString(“dd/MM/yyyy”))
此外,您根本不需要签名
您需要将DateTime值转换为字符串,然后如果我理解正确,请进行比较Hi DJ KRAZE,感谢您的尝试,但此
字符串dtFilter=string.Format(“Comments_Date={0}”,组合框_stockDates.SelectedItem.ToString());
不起作用。错误:
无法对System.DateTime和System.Double执行“=”操作。
能否显示从下拉列表中获得的确切文本我显示的内容可以用作测试目的..以及从何处获得System.Double..当没有单引号时,我获得System.Double错误round
{0}
。下拉列表中的确切文本将采用此格式
2014年12月31日
。我很困惑。它向您展示了一个示例,不是吗..?在
CultureInfo.GetCultureInfo(“en GB”)上进行谷歌搜索。