Welcome to the Blazor feedback portal. We’re happy you’re here! If you have feedback on how to improve the Blazor, we’d love to hear it!

  • Check out the features or bugs others have reported and vote on your favorites. Feedback will be prioritized based on popularity.
  • If you have feedback that’s not listed yet, submit your own.

Thanks for joining our community and helping improve Syncfusion products!

0
Votes

When virtualization property is enabled, value not set to component if we dynamically change the value which is not present in the currently loaded datasource.


Code Snippet     :


<SfDropDownList
TValue="string"
TItem="OrderDetails"
Placeholder="Select a name"
Query="@RemoteDataQuery"
EnableVirtualization="true">

    <SfDataManager
Url=https://js.syncfusion.com/demos/ejServices/Wcf/Northwind.svc/Orders
CrossDomain="true"
Adaptor="Syncfusion.Blazor.Adaptors.ODataAdaptor"></SfDataManager>

    <DropDownListFieldSettings
Text="CustomerID"
Value="CustomerID"></DropDownListFieldSettings>

    <DropDownListEvents
TItem="OrderDetails"
TValue="string"
ValueChange="OnValueChange"></DropDownListEvents>

</SfDropDownList>


<SfDropDownList
TValue="string"
TItem="OrderDetails"
@bind-Value="@ChangedValue"
Placeholder="Select a name"
Query="@RemoteDataQuery"
EnableVirtualization="true">

    <SfDataManager
Url=https://js.syncfusion.com/demos/ejServices/Wcf/Northwind.svc/Orders
CrossDomain="true"
Adaptor="Syncfusion.Blazor.Adaptors.ODataAdaptor"></SfDataManager>

    <DropDownListFieldSettings
Text="CustomerID"
Value="CustomerID"></DropDownListFieldSettings>

</SfDropDownList>


@code
{


    public
Query RemoteDataQuery = new
Query().Select(new
List<string> { "CustomerID" }).Take(10).RequiresCount();

    public
Query RemoteDataQuery1 = new
Query().Select(new
List<string> { "CustomerID" }).Take(10).RequiresCount();

    public string ChangedValue { get; set; }

    public
class OrderDetails

    {

        public
int? OrderID { getset; }

        public
string CustomerID { getset; }

        public
int? EmployeeID { getset; }

        public
double? Freight { getset; }

        public
string ShipCity { getset; }

        public
bool Verified { getset; }

        public
DateTime? OrderDate { getset; }

        public
string ShipName { getset; }

        public
string ShipCountry { getset; }

        public
DateTime? ShippedDate { getset; }

        public
string ShipAddress { getset; }

    }

    public
void OnValueChange(ChangeEventArgs<string,OrderDetails> args)

    {

        this.ChangedValue = args.Value;

    }


}



Replication Steps:


1. Open the first dropdown and choose first value.

2. Value will be updated to the second dropdown.

3. Open the first dropdown again and scroll 2 to 3 times and choose any value.

4. Value not updated to the second dropdown due to datasource not present based on the first dropdown’s scrolled value.