设置 Telerik Grid Filter Datepicker 的格式

Set Format of Telerik Grid Filter Datepicker

我在整个项目中都使用了 Telerik DatePickers,当我 select 一个日期时,它的格式是所需的 dd/MM/yyyy

但是,我有一个带有日期列的 Telerik Grid。因此,过滤器选项允许用户使用 Telerik DatePicker 到 select 日期作为过滤依据。当我 select 一个日期以美国格式出现时,即 MM/dd/yyyy (6/25/2020)。

AppDate 在我的模型中是类型 DateTime.

我尝试了以下方法来格式化 DatePicker 值,但它似乎不起作用。

columns.Bound(o => o.AppDate)
        .Format("{0:dd/MM/yyyy}")
        .ClientTemplate("#= kendo.toString(AppointmentDate, 'dd/MM/yyyy') #");

我如何更改它以便当我 select 一个日期时它以 dd/MM/yyyy 格式显示?

您也可以使用下面的简单代码来解决您的问题。

  • 在此您可以直接在 XML 代码中进行更改。
<Telerik:GridDateTimeColumn 
      DataField="DateThatUserPicked" 
      DataType="System.DateTime"
      DataFormatString="{0:dd/MM/yyyy}" 
      HeaderText="DateThatUserPicked" 
      SortExpression="DateThatUserPicked" 
      UniqueName="DateThatUserPicked"> 
</Telerik:GridDateTimeColumn> 
  • 或者,如果它对您不起作用,请使用下面的 boundColumn
<Telerik:GridBoundColumn 
      DataField="DateThatUserPicked" 
      DataFormatString="{0:dd/MM/yyyy}" 
      DataType="System.DateTime" 
      HeaderText="DateThatUserPicked">
</Telerik:GridBoundColumn>

https://www.telerik.com/forums/grid-column-datetime-filter-format

添加调用js函数覆盖已有模板的过滤模板

columns.Bound(o => o.AppDate)
    .Format("{0:dd/MM/yyyy}")
    .ClientTemplate("#= kendo.toString(AppointmentDate, 'dd/MM/yyyy') #")
    .Filterable(x => x.UI("datePicker"));


function datePicker(args) {
    args.element.kendoDatePicker({
        format:"dd/MM/yyyy"
    });
}

如果您使用行过滤,还有另一种过滤模板类型

.Filterable(x => x.Cell(y => y.Template("datePicker")));

尽管...该线程中的全球化方法也是一个好主意。 http://docs.telerik.com/kendo-ui/framework/globalization/overview