我无法在我的数据网格中过滤日期值。这是我的代码:
DataTable dbdataset;
DataView DV = new DataView(dbdataset);
DV.RowFilter = string.Format("Data LIKE '%{0}%'", textBox1.Text);
dataGridView1.DataSource = DV;
我总是得到这个错误:
Unable to Perform Operation 'Like' on System.DateTime and System.String
有人能帮帮我吗?
最佳答案
您不能对 DateTime
数据类型使用 LIKE
运算符。尝试使用等于运算符。
DV.RowFilter = string.Format("Data = '{0}'", textBox1.Text);
但是,请注意 textBox1.Text
中的内容。它必须可转换为 DateTime
数据类型。还要记住 DateTime
也有一个 Time
部分,而不仅仅是一个 Date
部分。
或者您可能想尝试过滤特定日期的所有行:
DateTime dt = Convert.ToDateTime(textBox1.Text);
DV.RowFilter = string.Format("Data > '{0}' AND Data < '{1}'", dt.AddDays(-1).ToString("yyyyMMdd"), dt.AddDays(1).ToString("yyyyMMdd"));
关于c# - 如何过滤数据网格中的日期值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27492248/