|
@using WebAPI.Data
@using Syncfusion.Blazor
@using Syncfusion.Blazor.DropDowns
@using Syncfusion.Blazor.Data
<SfDropDownList TValue="string" TItem="Countries" @bind-Value="@countryVal">
<SfDataManager Url="api/Country" Adaptor="Adaptors.WebApiAdaptor" CrossDomain="true"></SfDataManager>
<DropDownListFieldSettings Value="CountryId" Text="CountryName" />
<DropDownListEvents TItem="Countries" TValue="string" ValueChange="ChangeCountry"></DropDownListEvents>
</SfDropDownList>
<SfDropDownList TValue="string" TItem="States" @bind-Value="@StateValue" Enabled="@EnableStateDropDown" Query="@StateQuery">
<SfDataManager Url="api/State" Adaptor="Adaptors.WebApiAdaptor" CrossDomain="true"></SfDataManager>
<DropDownListFieldSettings Value="StateId" Text="StateName" />
</SfDropDownList>
@code{
public bool EnableStateDropDown = false;
public Query StateQuery = new Query();
public string StateValue { get; set; } = null;
public string countryVal { get; set; }
public void ChangeCountry(ChangeEventArgs<string, Countries> args)
{
this.EnableStateDropDown = true;
this.StateQuery = new Query().Where(new WhereFilter() { Field = "CountryId", Operator = "equal", value = args.Value, IgnoreCase = false, IgnoreAccent = false }).RequiresCount();
this.StateValue = null;
}
} |