[Solved] DateTimePicker not being translated

1 Answer 21 Views
GridView
Román
Top achievements
Rank 1
Román asked on 20 Mar 2026, 11:02 AM

Hello,

I'm using Telerik for WPF, version 2020.1.218, and I am using  RadGridView with filters. One of the colums is a Date type, and when I am changing the culture in order to translate the application, the filter is correctly translated. However, if I click on the calendar icon to select the date, that component is not being translated. Is this a bug?

Kind regards,

Román.

1 Answer, 1 is accepted

Sort by
0
Nadya | Tech Support Engineer
Telerik team
answered on 24 Mar 2026, 09:35 AM

Hello, Román,

Telerik UI for WPF suite offers built-in support for several languages, including English, German, Spanish, etc. You can see them all listed here: Localization Using Built-in Resources. You need to localize the components so they can appear translated.

For example, if you need to specify culture in German, you should just install the Telerik.Windows.Controls.for.Wpf.de nuget package and specify CultureInfo("de-DE"). Then the whole RadGridView will have a German translation automatically:

If you need to translate your control into a different language, you should use a Custom Localization Manager.

I hope this information helps. If you have other questions, do not hesitate to ask.

    Regards,
    Nadya | Tech Support Engineer
    Progress Telerik

    Love the Telerik and Kendo UI products and believe more people should try them? Invite a fellow developer to become a Progress customer and each of you can get a $50 Amazon gift voucher.

    Román
    Top achievements
    Rank 1
    commented on 24 Mar 2026, 01:29 PM

    I have installed the suggested package (Telerik.Windows.Controls.for.Wpf.Xaml.es), and I have set the culture with the following code:


                var newCulture = new CultureInfo("es-ES");
                var dateInfo = new DateTimeFormatInfo
                {
                    ShortDatePattern = DateTimeFormatter.ShortDateFormat,
                    ShortTimePattern = DateTimeFormatter.HourFormat
                };
                newCulture.DateTimeFormat = dateInfo;
                CultureInfo.DefaultThreadCurrentCulture = newCulture;
                CultureInfo.DefaultThreadCurrentUICulture = newCulture;
                Thread.CurrentThread.CurrentCulture = newCulture;
                Thread.CurrentThread.CurrentUICulture = newCulture;

    And the result is the same: the filter has been translated but the calendar is still in english:

    Nadya | Tech Support Engineer
    Telerik team
    commented on 25 Mar 2026, 09:34 AM

    Hello, Román,

    It seems that when you create a new DateTimeFormatInfo and assign it to newCulture.DateTimeFormat, the new DateTimeFormatInfo is constructed with invariant culture defaults — not from "es-ES". This effectively overwrites the Spanish date/time formatting (day names, month names, calendar, separators, etc.) with English/invariant values.

    I would recommend you to set ShortDatePattern and ShortTimePattern as follows to take effect. Use the following code snippet:

    public MainWindow()
    {
        var newCulture = (CultureInfo)new CultureInfo("es-ES");
        newCulture.DateTimeFormat.ShortDatePattern = "dd/MM/yyyy";
        newCulture.DateTimeFormat.ShortTimePattern = "HH:mm";
    
        Thread.CurrentThread.CurrentCulture = newCulture;
        Thread.CurrentThread.CurrentUICulture = newCulture;
    
    

    I also attached my sample project for reference. You can give it a try and see how it works. Everything is translated into Spanish automatically.

    I hope this helps. Let me know if you have other questions.

    Román
    Top achievements
    Rank 1
    commented on 07 Apr 2026, 06:23 AM

    Thank you very much! You saved my day! That was exactly the problem.
    Tags
    GridView
    Asked by
    Román
    Top achievements
    Rank 1
    Answers by
    Nadya | Tech Support Engineer
    Telerik team
    Share this question
    or