在dategridview中过滤日期时截断日期

时间:2018-09-12 21:08:10

标签: c# datagridview .net-4.0

我正在尝试过滤DataGridViewDataTable DateTimePicker`限制的by using

我的问题是,列DATETIME中有日期和时间,我只想仅使用日期而没有时间示例

select cast(DATETIME as DATE) from table_name

我在下面尝试过,但出现错误消息

  

表达式包含未定义的函数调用cast()

所以我该如何截断日期?

(MyDataGridView.DataSource as DataTable).DefaultView.RowFilter = string.Format("cast(DATETIME as DATE)= '{0}'", DpickerEntryDate.Value.ToShortDateString());

所有事件代码

        if (DpickerEntryDate.Value.Date <= DateTime.Today.Date)
        {
            (MyDataGridView.DataSource as DataTable).DefaultView.RowFilter = string.Format("cast(DATETIME as DATE) = '{0}'", DpickerEntryDate.Value.ToShortDateString());
        }
        else if (DpickerEntryDate.Value.Date > DateTime.Today.Date)
        {
            MessageBox.Show("Can not use future date", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1, MessageBoxOptions.RtlReading);
        }
        else
        {
            //do something
        }

谢谢

1 个答案:

答案 0 :(得分:-1)

不要“截断”日期。让日期作为DateTime流入您的C#代码中,然后以初始化代码的形式 Style 通过从pom.xml(从{{ DataGridView的1}}属性并设置DataGridViewColumn

Columns