Completed
Last Updated: 04 May 2022 20:15 by ADMIN
Release 3.3.0
the dropdown options display correctly until some come from a second service call.

The problem is that if the selected option is in the options added later then it does not show it as the selected value.

Example below shows correct function for "6" but incorrect for "7".

---

ADMIN EDIT

Here is a reproducible with the workaround highlighted in green:

 

@using System.Collections.ObjectModel

<h4>Option Selected: 6 @selectedSix</h4>
<br />

<TelerikDropDownList Data="@myDdlData"
                     TextField="MyTextField"
                     ValueField="MyValueField"
                     @bind-Value="@selectedSix" />

<h4>Option Selected: 7 @selectedSeven</h4>
<br />

<TelerikDropDownList Data="@myDdlData"
                     TextField="MyTextField"
                     ValueField="MyValueField"
                     @bind-Value="@selectedSeven">
</TelerikDropDownList>

<TelerikButton OnClick="@AddOption">Add Item</TelerikButton>

<ul>
    @foreach (var item in myDdlData)
    {
        <li>@item.MyValueField</li>
    }
</ul>

@code {
    int selectedSix { get; set; } = 6;
    int selectedSeven { get; set; } = 7;

    ObservableCollection<MyDdlModel> myDdlData = new ObservableCollection<MyDdlModel>(Enumerable.Range(1, 5).Select(x => new MyDdlModel { MyTextField = "item " + x, MyValueField = x }));

    protected override async Task OnInitializedAsync()
    {
        AddOption();

        await Task.Delay(TimeSpan.FromSeconds(1));

        AddOption();
    }

    void AddOption()
    {
        myDdlData.Add(new MyDdlModel { MyTextField = "item " + (myDdlData.Count + 1), MyValueField = myDdlData.Count + 1 });

        int origSelection = selectedSeven;
        selectedSeven = 0;
        StateHasChanged();
        //add this if it does not work
        //await Task.Delay(30);//wait a rendering frame
        selectedSeven = origSelection;
        //add this if it does not work
        //StateHasChanged();
    }

    public class MyDdlModel
    {
        public int MyValueField { get; set; }
        public string MyTextField { get; set; }
    }
}

 

Note: This behavior also occurs if the initial data is received after the component is initialized. The workaround in this case will be similar - set the selected value after the data is received.

---

Unplanned
Last Updated: 05 Jun 2024 10:06 by David
Created by: David
Comments: 0
Category: DropDownList
Type: Bug Report
9

In TelerikSelectBase that the DropDownList inherits, the FieldIdentifier is set only in the OnInitializedAsync method and therefore the FieldIdentitier is never updated. This can cause issues with validation as seen in this example:  https://blazorrepl.telerik.com/GyamPdlf37LXpPAW36.

To reproduce:

  • Select the last item in the tree 7.Garden and change the value in the drop down list to Unsupported - the drop down list shows a red border.
  • Select item 6.Garden from the tree. (Any item in the tree other than 1 will do) - I expect the drop down to not have the red border, yet is does.

For reference, in the TelerikInputBase, the FieldIdentifier is set in the SetParameterAsync and thus it is accordingly updated. See the TextBox behavior in the above sample.

Completed
Last Updated: 05 Jan 2022 12:00 by ADMIN
Release 3.0.0
Created by: Frederic
Comments: 2
Category: DropDownList
Type: Bug Report
8

When used in Bootstrap Grid the DropDownList popup is misaligned on the first open. On a second click, it is aligned.

This behavior is also valid for Combobox and Autocomplete.

Reproduction code:

 

<div class="box">
    <div class="row mt-3" style="align-items:center">
        <div class="col-12 col-lg-4">
            <span class="bold">ComboBox</span>
        </div>
        <div class="col">
            <TelerikComboBox Data="@myComboData" TextField="ComboTextField" ValueField="ComboValueField"
                             @bind-Value="selectedCombo" ClearButton="true" Filterable="true">
            </TelerikComboBox>
        </div>
    </div>

    <div class="row mt-3" style="align-items:center">
        <div class="col-12 col-lg-4">
            <span class="bold">DropDownList</span>
        </div>
        <div class="col">
            <TelerikDropDownList Data="@myDdlData" TextField="MyTextField" ValueField="MyValueField"
                                 @bind-Value="@selectedDropDown">
            </TelerikDropDownList>
        </div>
    </div>

    <div class="row mt-3" style="align-items:center">
        <div class="col-12 col-lg-4">
            <span class="bold">Autocomplete</span>
        </div>
        <div class="col">
            <TelerikAutoComplete Data="@Suggestions" @bind-Value="@AutoCompleteValue"
                                 ClearButton="true" />
        </div>
    </div>
</div>

@code {
    public int selectedDropDown { get; set; }
    public int selectedCombo { get; set; }
    public string AutoCompleteValue { get; set; }

    //ComboBox
    public class ComboModel
    {
        public int ComboValueField { get; set; }
        public string ComboTextField { get; set; }
    }

    IEnumerable<ComboModel> myComboData = Enumerable.Range(1, 20).Select(x => new ComboModel { ComboTextField = "item " + x, ComboValueField = x });

    //DropDownList
    public class MyDdlModel
    {
        public int MyValueField { get; set; }
        public string MyTextField { get; set; }
    }

    IEnumerable<MyDdlModel> myDdlData = Enumerable.Range(1, 20).Select(x => new MyDdlModel { MyTextField = "item " + x, MyValueField = x });

    //Autocomplete
    List<string> Suggestions { get; set; } = new List<string> {
        "Manager", "Developer", "QA", "Technical Writer", "Support Engineer", "Sales Agent", "Architect", "Designer"
    };
}

 

Completed
Last Updated: 22 Jan 2022 10:02 by ADMIN
Release 3.0.0
Created by: Jocelyn
Comments: 3
Category: DropDownList
Type: Bug Report
7

---

ADMIN EDIT

This behavior is observed in the DropDownList when filtering is enabled and in the ComboBox regardless of whether filtering is enabled or not.

The (filter) input gets focus, which shows the soft keyboard, which changes the viewport size, which causes the dropdown to hide. Unfortunately, there is no workaround at the moment (except perhaps disabling filtering for small viewports).

---

Unplanned
Last Updated: 22 Mar 2022 15:33 by ADMIN
Created by: Indra
Comments: 2
Category: DropDownList
Type: Bug Report
5

I have a cascading DropDownList scenario with virtual scrolling. When the first DropDownList changes value, the second one should reset its scrollbar to the top, because it now contains new data. This doesn't happen.

Here is a REPL test page.

===

ADMIN EDIT

===

As a workaround for the time being, you may track when the value is changed in the parent DropDownList to dispose and re-initialize the child DropDownList.

Here is an example: https://blazorrepl.telerik.com/mdafHabk585ZtzyV54.

Completed
Last Updated: 17 Sep 2020 10:55 by ADMIN
Release 2.18.0
I have logic that updates the Data of a dropdownlist (in this case, changes the value of the TextField of a the selected item in the dropdown). After the database update, I fetch the dropdown data anew, and it reflects in the dropdown element, but not in the main element where it is currently shown.
Won't Fix
Last Updated: 31 Mar 2020 09:10 by ADMIN
Scheduled for 2.10.0

Before, the Value from the first item in the Data was populated through @bind-Value to the view model. It no longer is.

In the following snippet, I expect to see "1" in the initial load of the page, but I see "0" - the default value for the integer.

@selectedValue

<TelerikDropDownList Data="@myDdlData" TextField="MyTextField" ValueField="MyValueField" @bind-Value="@selectedValue">
</TelerikDropDownList>

@code {
    //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; }
    }

    IEnumerable<MyDdlModel> myDdlData = Enumerable.Range(1, 20).Select(x => new MyDdlModel { MyTextField = "item " + x, MyValueField = x });

    int selectedValue { get; set; }
}

Completed
Last Updated: 29 Apr 2022 09:55 by ADMIN
Release 3.3.0

The following knowledge base article describes how to select the default value in a drop down, but if there's no default value the selection is not cleared using this method.

https://docs.telerik.com/blazor-ui/knowledge-base/inputs-clear-selection-value?_ga=2.18517947.380379649.1635269411-1661447875.1621547203

When setting the bind value to null (or the default, or frankly anything that doesn't exist in the drop down) I'd like the drop down list selection to be cleared when there's no default value set on the DropDownList.

 

@page "/"

<br />

<TelerikButton OnClick="@ClearSelection">Clear selection</TelerikButton>
<TelerikDropDownList Data="@data" @bind-Value="selectedValue" />

@code {
    List<string> data = new() { "selection" };
    string selectedValue;

    void ClearSelection()
    {
        // This does not cause the drop down to clear the selection and I think it should.
        selectedValue = null;
    }
}

Unplanned
Last Updated: 15 Nov 2021 13:59 by ADMIN
Created by: Denver
Comments: 0
Category: DropDownList
Type: Bug Report
4
On a tablet, when the DropDownList, the MultiSelect or the ComboBox components are clicked, any appearance or disappearance of the tablet keyboard will cause them to display an empty popup.

This only happens if the popup somehow could otherwise overflow the viewport, i.e. only when the DropDownList, the MultiSelect or the ComboBox component are very close to the bottom of the viewport.
Completed
Last Updated: 13 Jun 2024 11:43 by ADMIN
Release 2024 Q3 (Aug)
Created by: Matthijs
Comments: 4
Category: DropDownList
Type: Bug Report
4

Steps to reproduce:

  1. Open the Edit in Telerik REPL link from the demo page for DropDownList - Grouping.
  2. Add Filterable="true" to TelerikDropDownList.
  3. Run.
  4. Open the dropdown.
  5. Type in for instance the last item of the list "Röd Kaviar", that belongs to the category "Seafood".

Expected: the group name should change to "Seafood".

Actual: the group name is still "Beverages".

Completed
Last Updated: 13 Sep 2021 05:07 by ADMIN
Release 2.27.0
Created by: Xiaobo
Comments: 0
Category: DropDownList
Type: Bug Report
3
Missing label causes an accessibility issue:  The select element must have an accessible name
Unplanned
Last Updated: 12 Jul 2023 05:50 by Piotr
I have added a Filterable DropDownList inside the TelerikForm. When I select a value from the popup and tab away the focus class still denotes that the component is focused even though it is not. 
Completed
Last Updated: 03 Jul 2019 11:47 by ADMIN
Release 1.3.0
Created by: Oliver
Comments: 2
Category: DropDownList
Type: Bug Report
2

When the Value you bind to the DropDownList is null (for example, because it is a model that is not filled in by the user yet, and you need to perform validation), the component throws a null reference exception.

This does not happen for a nullable integer (example here)

Reproducible:

@using System.ComponentModel.DataAnnotations
@using Telerik.Blazor.Components.DropDownList
 
    <EditForm Model="@PageData" OnValidSubmit="@HandleValidSubmit">
        <DataAnnotationsValidator />
        <ValidationSummary />
        @PageData.QuoteState
 
        <TelerikDropDownList bind-Value="@PageData.QuoteState" DefaultItem="@Hint" Width="300px"
                             Data="@states" TextField="stateName" ValueField="stateID">
        </TelerikDropDownList>
        <ValidationMessage For="@(() => PageData.QuoteState)"></ValidationMessage>
        <button type="submit">Submit</button>
    </EditForm>
 
@functions {
    public MyViewModel PageData { get; set; } = new MyViewModel();
 
    public statesModel Hint { get; set; } = new statesModel { stateID = null, stateName = "Not Selected" };
 
    public class statesModel
    {
        public string stateID { get; set; }
        public string stateName { get; set; }
    }
 
    public class MyViewModel
    {
        [Required(ErrorMessage = "State is mandatory.")]//the value field in the dropdown model must be null in the default item
        public string QuoteState { get; set; }
    }
 
    public IEnumerable<statesModel> states = new List<statesModel>
    {
            new statesModel { stateID = "ACT", stateName = "ACT" },
            new statesModel { stateID = "NSW", stateName = "NSW" },
            new statesModel { stateID = "NT", stateName = "NT" },
            new statesModel { stateID = "QLD", stateName = "QLD" },
            new statesModel { stateID = "SA", stateName = "SA" },
            new statesModel { stateID = "TAS", stateName = "TAS" },
            new statesModel { stateID = "VIC", stateName = "VIC" },
            new statesModel { stateID = "WA", stateName = "WA" }
        };
 
    void HandleValidSubmit()
    {
        Console.WriteLine("OnValidSubmit");
    }
}

Completed
Last Updated: 07 Apr 2023 07:02 by ADMIN
Release 2.27.0
When I use the Chrome Lighthouse (based on the axe accessibility testing tool) to assess the accessibility of the TelerikDropDownList I am getting several issues.
Unplanned
Last Updated: 24 Apr 2023 14:12 by Bably
Opening the DDL through the expand button and selecting an item results in focus loss
Duplicated
Last Updated: 27 Mar 2024 16:05 by ADMIN

TlerikDropDownList keyboard navigation works differently from native html select.

In case we have a list with many similar options, for example:
011
021
211
....
In this case with native html select I can type 02 to select 021, but with TlerikDropDownList this would select 211.

If you type swiftly multiple printable characters, the DropDownList keyboard navigation will react only to the first character.

Declined
Last Updated: 23 Apr 2020 20:49 by Ben Hayat
Created by: Rob
Comments: 9
Category: DropDownList
Type: Bug Report
1
The Telerik drop down list seems to be very slow from initial click to when the list is shown. Other Telerik drop down components outside of the Blazor suite seem to be much more responsive and quick. In it's current state I would consider it unusable and will need to switch to InputSelect. Has this been reported or observed before?
Completed
Last Updated: 15 Feb 2021 12:25 by ADMIN
Release 2.22.0
When I change the PopupHeight dynamically (based on the number of items in my data source), the change is not reflected in the component.
Completed
Last Updated: 23 Jun 2020 07:39 by ADMIN
Release 2.15.0

Clicking on the <label> opens the dropdown, but clicking on its main element does not

Selected value: @selectedValue
<br />
<label>some label for the dropdown, open it and test whether clicking outside closes it
    <TelerikDropDownList Data="@myDdlData" TextField="MyTextField" ValueField="MyValueField" @bind-Value="selectedValue">
    </TelerikDropDownList>
</label>

@code {
    //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; }
    }

    IEnumerable<MyDdlModel> myDdlData = 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
}

1 2