Completed
Last Updated: 12 Oct 2020 15:11 by ADMIN
Release R3 2020 SP1
David
Created on: 06 Oct 2020 15:54
Category: DateTimePicker
Type: Bug Report
0
RadDateTimePicker: wrong DPI Scaling on Popup Calendar

NOTE: This is my second attempt to get a response from the support team. I am paying for Priority Support, but the ticket below has gone unanswered:

https://feedback.telerik.com/winforms/1487329-popup-calendar-in-raddatetimepicker-does-not-scale-correctly-on-high-dpi-display

See attached screenshot. The popup calendar looks wrong when running on a display with 250% scaling. Surely, that's not correct. The calendar should not be so large and the fonts so small. Am I missing something? I have done all the other steps to enable High DPI support, and as you can see, the textbox area seems to scale fine.

Any ideas? And thanks for your help.

David

Attached Files:
4 comments
ADMIN
Dess | Tech Support Engineer, Principal
Posted on: 08 Oct 2020 05:21
Hello, David,

Thank you once again for your cooperation. I confirm that it is a scaling issue with RadDateTimePicker and its popup calendar. 

I have logged it in our feedback portal by making this thread public on your behalf. You can track its progress, subscribe for status changes and add your comments on the following link - feedback item.

I have also updated your Telerik points.

Currently, due to specificity of the problem, the possible solution that I can suggest is to adjust the calendar size via the CalendarSize property and the font programmatically as it was previously demonstrated.

Please excuse us for the inconvenience caused. We will do our best to introduce a fix accordingly. Make sure that you follow this item in order to get notified once the status is changed.

Regards,
Dess | Tech Support Engineer, Sr.
Progress Telerik

Virtual Classroom, the free self-paced technical training that gets you up to speed with Telerik and Kendo UI products quickly just got a fresh new look + new and improved content including a brand new Blazor course! Check it out at https://learn.telerik.com/.

David
Posted on: 07 Oct 2020 13:59

Hi Dess,

Thanks for your reply. To me, it doesn't look like a font issue. It looks like a scaling issue with the drawing of the calendar itself, as in the padding, size, etc... So, using your sample project, here is how the calendar looks at 100%:


And here it is at 250% scaling:

As you can see, the font size looks okay, but the calendar size is enormous and extreme. And here is with the font size bumped up from 12f to 18f:

As you can see... Simply increasing the font size doesn't make it look right. It's just not a proper fix for the issue.

Anything else I can try? 4k displays have become very common with our customers, and the 250% is the default for those. We really need this to scale properly.

Let me know if there's anything else you need.

David

ADMIN
Dess | Tech Support Engineer, Principal
Posted on: 07 Oct 2020 06:04

Hello, David,

Indeed, the refered item is a feedback item for a bug report which default response time is 120 hours. Since a lot of customers use the feedback portal for reporting bugs or feature requests, the response time is longer than a standard support thread. The support tickets are entitled with 24 response time. Hence, if it is an urgent problem, feel free to submit support tickets.

I have replied to the public bug report in order to track in an efficient way the issue. Since I am able to test only up to 175% DPI scaling, I want to confirm that the undesired font is reproduced on your end with my sample project as well.

Meanwhile, the possible solution that I can suggest is to handle the DateTimePickerElement.Calendar.ElementRender event and adjust the font: 
        public RadForm1()
        {
            InitializeComponent();

            ThemeResolutionService.ApplicationThemeName = "Windows8";

         this.radDateTimePicker1.DateTimePickerElement.Calendar.ElementRender+=Calendar_ElementRender;
        }

        Font f = new Font("Arial",12f, FontStyle.Regular);
        private void Calendar_ElementRender(object sender, RenderElementEventArgs e)
        {
            e.Element.Font = f;
        }
I hope this information helps. If you need any further assistance please don't hesitate to contact me. 

Regards,
Dess | Tech Support Engineer, Sr.
Progress Telerik

Virtual Classroom, the free self-paced technical training that gets you up to speed with Telerik and Kendo UI products quickly just got a fresh new look + new and improved content including a brand new Blazor course! Check it out at https://learn.telerik.com/.

David
Posted on: 06 Oct 2020 18:50

I think my earlier "ticket" must have gone in as feedback. Not sure where I went wrong with that, but I guess that's why I haven't heard anything.

Hope to hear from someone soon. Thank you!