Set one of the monitors to use 125% DPI scaling. Start the attached project on a monitor with 100% DPI scaling - the form is expected to be with size 400,400. Move the form to the monitor with 125% DPI scaling. You are expecting the form's size to be 500,500, but it is 507,521. Please refer to the screenshots.
Workaround:
Override the RadForm.ScaleControl method as follows:
Protected Overrides Sub ScaleControl(factor As SizeF, specified As BoundsSpecified)
Dim initialSize As Size = Me.Size
MyBase.ScaleControl(factor, specified)
Me.Size = TelerikDpiHelper.ScaleSize(initialSize, factor)
End Sub
Create a brand new project and add a ShapedForm. Please follow the steps illustrated in the attached gif file.
To reproduce: public Form1() { InitializeComponent(); RadButton bt = new RadButton(); bt.Dock = DockStyle.Right; bt.Parent = this; RadTitleBar tb = new RadTitleBar(); tb.Dock = DockStyle.Top; tb.Parent = this; tb.Size = new Size(150, 100); this.Shape = new RoundRectShape(20); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Sizable; }