Сокращение даты при фильтрации даты в dategridview - PullRequest
0 голосов
/ 13 сентября 2018

Я пытаюсь отфильтровать DataGridView ограниченный из DataTable источника by using DateTimePicker`

моя проблема в том, что в столбце 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 голосов
/ 13 сентября 2018

Не «усекать» дату.Позвольте дате течь в ваш код C # как DateTime, затем в коде инициализации формы, Style столбец, выбирая столбец из DataGridView (a DataGridViewColumn из Columns свойства DataGridView и настройка DefaultCellStyle

column.DefaultCellStyle.Format = //Some format from DateTime.ToString(string format)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...