Unplanned
Last Updated: 23 Apr 2020 15:34 by ADMIN
Tinus
Created on: 23 Apr 2020 15:33
Category: UI for WinForms
Type: Bug Report
0
RadDataEntry: Hosted Controls are not scaled correctly on HDPI

1. Set HDPI on your monitor (for example 150%)

2. Set RadDataEntry data source in RunTime

You will see that RadDataEntry hosted controls are not scaled correctly.

Note that there is a related problem if the data source is set in design time. Controls themselves will be scaled correctly, however, text box hosted control's High will not be scaled correctly.

Workaround:
You can subscribe to ItemInitializing event before you set the DataSource and proceed by scaling RadDataEntry hosted controls manually as shown in the following code snipped.

private void radButton1_Click(object sender, EventArgs e)
{
    this.radDataEntry1.ItemInitializing += RadDataEntry1_ItemInitializing;
    this.radDataEntry1.ItemDefaultSize = new Size(200, 26);

    radDataEntry1.DataSource = new Employee
    {
        FirstName = "Sarah",
        LastName = "Blake",
        Occupation = "Supplied Manager",
        StartingDate = new DateTime(2005, 04, 12),
        IsMarried = true,
        Salary = 3500,
        Gender = Gender.Female
    };         
}
private void RadDataEntry1_ItemInitializing(object sender, ItemInitializingEventArgs e)
{
    if (this.radDataEntry1.RootElement.DpiScaleFactor.Width != 1)
    {
        foreach (Control control in e.Panel.Controls)
        {
            control.Scale(this.radDataEntry1.RootElement.DpiScaleFactor);
        }
    }
}

Attached Files:
0 comments