I want to capture the user selection (which has to happen through ValueChanged, as OnChange does not fire when I need it). At this point I want to use the selection from the user and to clear the combo box.
I would expect that this should work but it does not:
@result
<br />
from model: @MyItem
<br />
<br />
<TelerikComboBox Data="@MyList" Value="@MyItem" ValueChanged="@( (string v) => MyValueChangeHandler(v) )" Placeholder="Choose something">
</TelerikComboBox>
@code {
string result;
private async Task MyValueChangeHandler(string theUserChoice)
{
result = string.Format("The user chose: {0}", theUserChoice);
MyItem = null; // this should be enough
}
protected List<string> MyList = new List<string>() { "first", "second", "third" };
protected string MyItem { get; set; } = "second";
}
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>
According to the documentation for the ComboBox, https://www.telerik.com/blazor-ui/documentation/components/combobox/filter, "Filtering looks in the TextField, and the filter is reset when the dropdown closes."
However, if the user starts typing and then either selects an item from the dropdown, the filter persists until the user clears the text box or opens the dropdown and clicks outside of it.
Example steps using the below demo link:
1.) Configure settings:
2.) Type the letter 'h':
3.) Select the first option:
4.) Click dropdown arrow and still see filtered list based on the previously typed filter (anything containing an 'h'):
Reproducible on the demo page: https://demos.telerik.com/blazor-ui/combobox/filtering
The matching problem occurs when a user types to filter input and selects an option from the dropdown, then code changes the bound value. If any code changes the bound value to an item that doesn't match the filter, the display field appears empty instead of showing the newly bound value.
For example: if instead of opening the dropdown during step 4, the user clicked a button that programmatically set the value to "Audi", then the field would show to the user as blank. As demonstrated in the following Repl, it is definitely the filters fault, since typing a filter which includes Audi (ex: 'a') does have the text on the ComboBox change when clicking the button to programmatically update the bound value.
https://blazorrepl.telerik.com/cJapEQGO21LFAeLg53
GitHub Repo - https://github.com/benhysell/BlazorGridPagingIssue
Expected Behavior - In the ComboBox ItemTemplate show the user's email address along with user name
Actual Behavior - Works fine debugging in Visual Studio, however in a published application the browser throws exception and will not display user's email address in the ItemTemplate.
Steps To Reproduce
Details
Ran across this in a larger application...I have a class that inherits from Microsoft.AspNetCore.Identity.IdentityUser<Guid> and wanted to display all of my users in a ComboBox with a custom ItemTemplate consisting of the Name and Email. This works great in debug, however every time I publish/deploy the Email address is not shown. The example repo is a stripped down version of the larger application reproducing the error.
The application is making an OData call to the backend to retrieve the Users...in the repo we do not goto a database, in the live application we do. In both instances the user's Email is not shown in the ItemTemplate, even though one can see via the browser's network traffic tab the results from the OData call include the email address for the users.
This issue does not just affect the email property, I was unable to get any of the properties listed on Microsoft.AspNetCore.Identity.IdentityUser<Guid> to render in a published application in the ItemTemplate for the Combobox.
Note - all of the properties in Microsoft.AspNetCore.Identity.IdentityUser<Guid> are marked as 'virtual'. I attempted to re-create this issue with a different class, in the repo I used the WeatherForecast class and created a virtual TemperatureK property...this however worked in debug and release without issue. One can see this in the OData Weather Forecasts ComboBox on the same page, https://localhost:5001/createWeather.
Example Repo: https://github.com/benhysell/BlazorGridPagingIssue
Steps To Reproduce
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