To reproduce the problem, we need 2 Monitors with different scaling.
Let's say that Monitor 1 has 150% Scaling and Monitor 2 has 100% (Monitor 2 is the main monitor). When starting the program and click on radbutton1, then an empty form (Toolbox) is shown. Move the Toolbox form to the other monitor and then open the RadDropDownList. The problem is that the drop-down is shown not under the control.
Please refer to the attached project.
RadDropDownList gets focused when the DpiScaleChanged is triggered.
Run the attached sample project. When the form is moved from monitor A (100% DPI) to monitor B (150% DPI), every RadDropDownList gets the focus which leads to scrolling the container back to the top.
1. PropertyGridTextBoxEditor becomes smaller height.
2. DropDownListEditorElement also has a small height and popup appear with a vertical scrollbar.
Setting the DataSource in the SelectedIndexChanged event will trigger the event again. Thus leading to StackOverflowException.
A possible workaround will be to unsubscribe from the event when changing the DataSource property or raise a flag which can be checked in the event handler.
StackOverflowException is thrown when setting SelectedValue in the SelectedIndexChanged event.
To workaround this we can unsubscribe from the event before setting the SelectedValue property and then subscribe again. Another approach is to change the SelectedIndex property in the SelectedIndexChanged or SelectedValue in the SelectedValueChanged event.
Run the attached project and minimize the form. Then, restore to its normal state:
Initial state:
After minimizing the form and restoring to its normal state, the arrow for RadDropDownList seems clipped:
Use the following code snippet and refer to the attached gif file:
private RadDropDownList Drop { get; set; }
public RadForm1()
{
InitializeComponent();
}
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
this.Drop = new RadDropDownList();
this.Drop.AutoSize = true;
this.Drop.DropDownStyle = Telerik.WinControls.RadDropDownStyle.DropDownList; //So users can't write.
this.Drop.Font = new Font("Segoe UI", 11.25f, FontStyle.Regular, GraphicsUnit.Point);
RadListDataItem item = new RadListDataItem();
item.Value = string.Empty;
item.Text = string.Empty;
this.Drop.Items.Add(item);
RadListDataItem item2 = new RadListDataItem();
item2.Value = "Hello";
item2.Text = "Hello";
this.Drop.Items.Add(item2);
this.Controls.Add(this.Drop);
this.Drop.SizeChanged += Drop_SizeChanged;
}
private void Drop_SizeChanged(object sender, EventArgs e)
{
this.Text = this.Drop.Size.ToString();
}
}
Run the attached project and open the drop down. When the mouse wheel is used, the items in the drop down are expected to scroll.
Expected: items are scrolled.
Actual: nothing happens
Note: It works in .NET 4.8, but not in .NET 6
It worked in R2 2022 SP1.
FIX. RadDropDownList - the control looks different than the rest of the editors when disabled and using DropDownList style
Using this font is OK:
Font("Calibri", 24, FontStyle.Regular, GraphicsUnit.Pixel)
But using this font is not OK, the Unit is not respected:
Font("Calibri", 24, FontStyle.Italic | FontStyle.Bold, GraphicsUnit.Pixel)
The control also is increased in height.
Please run the attached sample project and you will notice that the arrow button is missing. If you comment applying the Office2019Light theme the arrow is shown.
Fluent theme:
Workaround:
Me.RadDropDownList1.DropDownListElement.ArrowButtonMinWidth = 20
One cannot set the SvgImage of the RadListDataItems.
Additionally, when ShowImageInEditorArea is true the SvgImage must be displayed in the editor area.
There is still an issue related to the drop down auto complete described in this bug report.
After downloading the Release R2 2020 SP1, we can now enter more than 1 character. However, if the user keys the space bar the text in the edit area of the drop down is deleted. Additionally, if the first 2 characters are the same (for example AA), the second character is never added to the text. The issue can be re-produced using the same steps as the linked post. I have also attached a screenshot.
Let me know if you need any additional info.
Seth
I created a simple project just with a dropdownlist. The data source of the dropdownlist is a reader from SQL. First time, when I type something in the text area of the dropdownlist, the autocomplete works perfectly: if a type "235", it brings me at the first job starting with '235' and I can select the job. After, when I click back in the text area to type something else (for example: "236"), I can just type '2'. It won't let me type anything else and the autocomplete is not working. The autocomplete mode is Suggest.
This is a new problem with telerik 2020.2.512.40. Just previously, I had the trial version (2020.1.218.40) and it was working without problem. I didn't change anything in the small project. In fact, I took this project and put Telerik.Wincontrols.UI version 2020.1.218.40 anf it was working properly. I put back the version 2020.2.512.40 of the control and the problem reappeared.
First time (works fine):
Seconf time: not able to type more than 1 character