ASP.NET Core TimePicker Overview

Telerik UI for ASP.NET Core Ninja image

The TimePicker is part of Telerik UI for ASP.NET Core, a professional grade UI library with 110+ components for building modern and feature-rich applications. To try it out sign up for a free 30-day trial.

The Telerik UI TimePicker TagHelper and HtmlHelper for ASP.NET Core are server-side wrappers for the Kendo UI TimePicker widget.

The TimePicker enables users to select time values from a predefined list or enter new ones.

Initializing the TimePicker

The following example demonstrates how to how to define the TimePicker.

    @(Html.Kendo().TimePicker()
        .Name("timepicker") // The name of the TimePicker is mandatory. It specifies the "id" attribute of the widget.
        .Value(DateTime.Now) // Set the value of the TimePicker.
    )
    <kendo-timepicker name="timepicker" value="DateTime.Now"></kendo-timepicker>

Starting with the 2024 Q3 release, the HtmlHelper version of the component supports declarative initialization.

Basic Configuration

The TimePicker TagHelper configuration options are passed as attributes.


        @(Html.Kendo().TimePicker()
                .Name("end")
                .Value("8:30 AM")
                .Min("8:00 AM")
                .Max("7:30 AM")
        )

        <kendo-timepicker name="end" value="new DateTime(1900, 1, 1, 8, 30, 0)"
            min="new DateTime(1900, 1, 1, 8, 0, 0)" max="new DateTime(1900, 1, 1, 7, 30, 0)">
        </kendo-timepicker>

Model Binding

The TimePicker component respects DataAnnotation attributes when using the TimePickerFor(m => m.Property) declaration. Besides the [Required] attribute, the TimePicker also supports the [DisplayFormat] and [Range] attributes. The Format configuration will be set based on the specified DisplayFormat. The Min and Max options will be set based on the [Range] attribute.

    @(Html.Kendo().TimePickerFor(m => m.MyDateTimeProperty))

    <kendo-timepicker for="MyDateTimeProperty">
    </kendo-timepicker>
        [Required]
        [DisplayFormat(DataFormatString = "{0:HH:mm:ss tt}", ApplyFormatInEditMode = true)]
        [Range(typeof(DateTime), minimum: "01/01/2023 03:00:00 AM", maximum: "12/31/2023 10:00:00 AM")]
        public DateTime MyDateTimeProperty{ get; set; }

TimeOnly compatability

As of the 2024 Q4 Release the ASP.NET Core TimePicker is compatible with the TimeOnly type. Following this release you can also set the value of the component to a TimeOnly property:

    @(Html.Kendo().TimePicker().Name("timeOnly").Value(new TimeOnly(10,20,30)))
    <kendo-timepicker name="timeOnly" value="new TimeOnly(10,20,30)"></kendo-timepicker>

Functionality and Features

Feature Description
Adaptive Mode The TimePicker supports an adaptive mode that provides a mobile-friendly rendering of its popup.
Component Type The TimePicker allows you to choose from both a standard and a modern rendering appearance.
Floating Labels You can explicitly set a floating label which floats above the field and remains visible.
Selected time The TimePicker allows you to render a pre-selected time and also define the minimum and maximum time it displays.
Focused time The TimePicker allows you to define focused time when the pop-up is opened.
Interval You can configure the interval between the time values.
Formats The TimePicker allows you to define its time formatting.
Validation The TimePicker is designed to keep its input value unchanged even when the typed time is invalid.
Globalization The globalization process combines the translation of component messages (localization) with adapting them to specific cultures.
Accessibility The TimePicker is accessible for screen readers, supports WAI-ARIA attributes, delivers keyboard shortcuts for faster navigation, and allows you to render it in a right-to-left direction.
Automatic Correction You can configure whether the component will autocorrect the user's input when the Min and Max values are set.

Next Steps

See Also

In this article