An open ComboBox will not close when the user tabs out of it when the ComboBox is the last component on the page. Here is a test example: Creating Blazor ComboBox
If there is another component after the ComboBo, then tabbing out works correctly.
The popup window is not closed when the ComboBox is disabled from code.
Reproduction code:
Selected value: @selectedValue
<br />
<TelerikComboBox Data="@myComboData"
TextField="MyTextField"
ValueField="MyValueField"
Value="selectedValue"
ValueChanged="@((int value) => ValueChangedHandler(value))"
Placeholder="Select an item..."
ClearButton="true"
Enabled="@isEnabled"
Filterable="true">
</TelerikComboBox>
@code {
public bool isEnabled { get; set; } = true;
IEnumerable<MyDdlModel> myComboData = Enumerable.Range(1, 20).Select(x => new MyDdlModel { MyTextField = "item " + x, MyValueField = x });
int selectedValue { get; set; } = 3; //usually the current value should come from the model data
public async Task ValueChangedHandler(int value)
{
isEnabled = false;
await Task.Delay(4000); //simulate network delay
selectedValue = value;
isEnabled = true;
}
//in a real case, the model is usually in a separate file
//the model type and value field type must be provided to the dropdpownlist
public class MyDdlModel
{
public int MyValueField { get; set; }
public string MyTextField { get; set; }
}
}
I have a ComboBox/DropDownList that gets data from a remote service, using virtualization. When the PageSize property is big enough (in my case 20), I have issues scrolling up the selection box dropdown list. I'm trying to scroll but then resets to the currently selected item making it almost impossible to scroll up. You can use your own demo examples to replicate this issue.
To reproduce the issue, try the ComboBox - Virtualization, in Telerik REPL (Demo), change the PageSize from 10 to 20. Open the dropdown and select an item. Then, open again the dropdown and scroll slowly up.
Reproduction: https://blazorrepl.telerik.com/cHbFYUFq53Ext4Yt24.
Steps to reproduce:
When the option "AllowCustom" is enabled for a TelerikComboBox and the user types something above a certain speed, typed characters are lost. Here is a GIF showing the problem on the page https://demos.telerik.com/blazor-ui/combobox/custom-values – I typed "123456", but end up with "1246" instead. In between the input field is showing some weird glitching.
Is there a way to have the TelerikComboBox behave normally, as it apparently did in versions prior to 4.3.0? We noticed this behavior only some time after upgrading from version 4.0.1, where everything still works properly.
When the height of the popup is set to 'auto' and it opens upwards, the resizing process causes it to be incorrectly positioned.
# Reproduction:
1. Open this REPL - https://blazorrepl.telerik.com/mHuoPRFk52ienlUt52
2. Shrink the browser so that the ComboBox remains at the bottom of the window:
3. Type "item 2" in the ComboBox
I'd like to report a bug with the Telerik combo box opening animation.
The problem can be reproduced on your page https://demos.telerik.com/blazor-ui/combobox/templates
Reproduction steps
1. Open page https://demos.telerik.com/blazor-ui/combobox/templates
2. Change the window to restored mode
3. Open the Product combo box and observe that the popup animation works as expected
4. Resize the window slightly vertically
5. Open the Product combo box
6. Observe that the combo box popup animation starts in the wrong place
This issue is 100% reproduceable every time and also can be reproduce if the popup is opened and the window is maximized.
Please see the attached video from about 15 to 25 seconds. Note that I reproduce the issue in the video a couple of times however due to the quality of it you can only see the incorrect animation between 15 to 25 seconds.
I hope the information helps.
When selecting an item with the Enter key, the value is not displayed in the input field.
ReproductionThe item is selected, but its value is not displayed inside the input field.
===
The issue is also reproducible with the MultiColumnComboBox component.
Description
When selecting a value via the keyboard, the input element is out of sync.
Reproduction (if bug)
1. Create a Combobox and populate it with data.
2. Trigger a change with the keyboard.
3. The value is updated but the input holds the old value and is out of sync.
REPL for reproduction:
https://blazorrepl.telerik.com/GnEnPZun00tsuQEA47
Hello,
iam found "strange" behaviour compared to previous versions in combobox, with custom paging, filtering, valuemapper.
"simple description":
- Do not call OnRead and ValueMapper AFTER clicking/selecting the ITEM in any case(after filtering, or after scrolling...). Do it same way as selecting WITHOUT prior filtering.
Complex test
A sample for testing is here(and comments inside):
https://blazorrepl.telerik.com/GGPwalvk09g228sm32
How to reproduce:
1 - start = value is PREselected - OK
2 - clear the combobox - OK
2 - input value 40 - slowly do not rush, number by number - OK
3- wait 2 seconds and Click/select item ("Name 401" etc) - NOK
observe the events fired(Exception/info: time - indicates that OnRead was fired again)
Repeat the same WITHOUT filtering, just scrolling
observe the events fired = looks ok (Exception/info: time)
When selecting item by CLICKING on it(after filtering) looks like those events are fired:
- ValueMapper (why?)
- OnRead again(why again?)
- bind value (ok)
and sometimes ValueMapper again
it depends of "timing"
expected:
When selecting item by CLICKING on it:
- BIND the value. Everything is in there(no reason to call OnRead or ValueMapper)
Related, unexpected(video attachment):
Also when working in "real" scenario, AFTER clicking on item AFTER filtering, it returns full MODEL assembly path into to input filed, instead of clicked item
Lets have a list: {Name of the item,Another item,Next item}
entere in combobox/filter "name", results are shown ok, clicked on one and result shuld be ("Name of the item"), after clicking it returns "base model class name"
ie: "inwApp1.Pages.prozam.crm.EdcrmOrg+BaseKeyModel" - you dont want to see this :) .
There is different event orders for those 2 scenarios(it should be the same for both as at point 1) ):
1) when SELECTing item without filtering(just moving with scrollbar down to value 401 (only with onread and virtual paging)) = OK
2) when filtering by value "40" and SELECTing item by clicking on it - NOT OK = it look like this causes the problems and subsequent event calls
Is there any workaround, or new "property" to set? Thanks
When the user selects a value and then focuses on another component the OnBlur of the ComboBox is not triggered. The issue is reproducible in the Firefox browser (tested with version 109.0).
To reproduce the issue open the following REPL example in the Firefox browser:
https://blazorrepl.telerik.com/mdklmHYN06lVQjyL26
Select a value in the first ComboBox and then focus on the second ComboBox. The OnBlur event should trigger.
Hi,
EDIT: This issue (of course) relates to the case where the combobox has data selected when rendering.
The clear button of the combobox behaves in a way that I find strange, and which prevents us to get the desired behaviour in our application.
It is easily reproducable with your demo here:
https://demos.telerik.com/blazor-ui/combobox/templates
When loading the page there is no clear button, which I think is wrong. Especially since it is not even in the DOM, so it cannot be made visible with styling. When clicking in the field, the clear button appears, and it stays there when changing focus to elsewhere, which seems inconsistent.
In other words, the span of the button (in the red box below) only appears when the combobox has had focus.
Thanks,
Niels
If my browser culture is set to Swedish, I can no longer tab through multiple ComboBoxes.
<AdminEdit>
You can manually add the TabIndex parameter to each ComboBox and set their values to non-negative integers.
</AdminEdit>
If the AllowCustom parameter is set to true and the OnChange fires during the data load, the value in the OnChange handler is null. Press Enter before the data load ends and the OnChange handler will give null instead of the current input value.
If I enter a text and press enter when there are no items (yet), I expect it to call the OnChange with that text. Even with a static list of zero items (replace 'Read=' with 'Data=' en provide a new List<>()), the OnChange is passed a null value.
If the OnChange fires before the empty dropdown get opened, it passes a null value, if it fires after the empty dropdown opens, it passes the entered text. That doesn't sound logical to me. Why needs the (empty) dropdown to be open before the data gets passed? And if that is necessary, why gets the OnChange fired before the dropdown is opened, and doesn't wait till it is open and then fire with the entered data?
I have a ComboBox that allows me to select different entities that I want to edit data for. Some of this data involves selecting other options from ComboBoxes. When I type in my cascading filterable ComboBox to select an item, its value changes accordingly, but when I change the entity I'm editing, that ComboBox doesn't display the selected value, even though there is a selected value present.
Reproduction: https://blazorrepl.telerik.com/GGYgmlFA45guzWlg06.
Steps to reproduce:
In my data, I have multiple identical values for the TextField of the ComboBox. When the user selects one of them and focuses away from the component the selected value changes to the first instance of the items with the same TextFields, although they have different ValueFields.
Reproduction:
<TelerikComboBox Data="@myDdlData"
TextField="MyTextField"
ValueField="MyValueField"
Value="selectedValue"
ValueChanged="@((int? id) => ValueChangedHandler(id))"
FilterOperator="StringFilterOperator.Contains"
Filterable="true">
</TelerikComboBox>
@code {
private List<MyDdlModel> myDdlData { get; set; }
private void ValueChangedHandler(int? id)
{
selectedValue = id;
}
public class MyDdlModel
{
public int? MyValueField { get; set; }
public string MyTextField { get; set; }
}
int? selectedValue { get; set; }
protected override void OnInitialized()
{
myDdlData = new List<MyDdlModel>()
{
new MyDdlModel()
{
MyValueField = 1,
MyTextField = "John Smith"
},
new MyDdlModel()
{
MyValueField = 2,
MyTextField = "John Smith"
},
new MyDdlModel()
{
MyValueField = 3,
MyTextField = "John Smith"
},
new MyDdlModel()
{
MyValueField = 4,
MyTextField = "Alice Jones"
},
new MyDdlModel()
{
MyValueField = 5,
MyTextField = "Alice Jones"
},
};
}
}
Description
When the user types a value in the input and wishes to navigate to the beginning or end (by pressing Home/End buttons) of the input to make a correction, a value from the popup is actually selected and the value in the input is overridden.
Reproduction
1. Create a ComboBox and enable filtering.
2. Start typing in the input. Popup is opened.
3 Try to navigate in the input via the Home/End buttons. A value from the popup is selected that overrides the value in the input.