How to get items in Blazor ListBox
14 Aug 20262 minutes to read
The GetDataByValue method returns the data item or items corresponding to the value or values provided, based on the field mapped to Value in ListBoxFieldSettings. If a provided value does not match any item, that value is ignored and is not included in the result.
Signature:
// For single value
TValue GetDataByValue(TValue value)
// For array of values
TValue[] GetDataByValue(TValue[] value)Parameters:
-
value(TValueorTValue[]) — The value or array of values to look up in the data source.
Returns:
- Single value form:
TValue— the matching data item, ordefaultif no match is found. - Array form:
TValue[]— the matching data items. Values that do not match any item are ignored and excluded from the result.
In the following example, the Value field in ListBoxFieldSettings is mapped to Text, so the input array must contain the item Text values. The TValue is string[], which enables multiple selection.
@using Syncfusion.Blazor.Buttons
@using Syncfusion.Blazor.DropDowns
<SfListBox @ref="ListBoxObj" DataSource="@Vehicles" TValue="string[]" TItem="VehicleData" @bind-Value="@Value">
<ListBoxFieldSettings Text="Text" Value="Text" />
</SfListBox>
<button @onclick="click">Click</button>
@code {
SfListBox<string[], VehicleData> ListBoxObj;
public List<VehicleData> Vehicles = new List<VehicleData> {
new VehicleData { Text = "Hennessey Venom", Id = "Vehicle-01" },
new VehicleData { Text = "Bugatti Chiron", Id = "Vehicle-02" },
new VehicleData { Text = "Bugatti Veyron Super Sport", Id = "Vehicle-03" },
new VehicleData { Text = "SSC Ultimate Aero", Id = "Vehicle-04" },
new VehicleData { Text = "Koenigsegg CCR", Id = "Vehicle-05" },
new VehicleData { Text = "McLaren F1", Id = "Vehicle-06" },
new VehicleData { Text = "Aston Martin One-77", Id = "Vehicle-07" },
new VehicleData { Text = "Jaguar XJ220", Id = "Vehicle-08" }
};
public class VehicleData
{
public string Text { get; set; }
public string Id { get; set; }
}
public string[] Value = new string[] { "Bugatti Chiron" };
private void click()
{
var Values = ListBoxObj.GetDataByValue(Value);
}
}