DxComboBox<TData, TValue>.ValueExpression Property
Specifies a lambda expression that identifies the Value property’s bound value when the ComboBox is placed in the EditForm.
Namespace: DevExpress.Blazor
Assembly: DevExpress.Blazor.v24.2.dll
NuGet Package: DevExpress.Blazor
Declaration
[Parameter]
public Expression<Func<TValue>> ValueExpression { get; set; }
Property Value
Type | Description |
---|---|
Expression<Func<TValue>> | A lambda expression that identifies the bound value. |
Remarks
The ValueExpression
property obtains metadata about the value bound to the Value
property. It is used when you add the ComboBox editor to Blazor’s standard EditForm component to validate the Value property value.
You can use one of the following ways to set up this property:
Specify Value and
ValueExpression
properties and handle the ValueChanged event.<EditForm> <DxComboBox Data="@Strings" ... Value="@value" ValueExpression="@(() => value )" ValueChanged="@ValueChanged"> </DxComboBox> </EditForm> @code { string value = null; // ... void ValueChanged(string MyString) { // ... } }
Use the @bind attribute for the
Value
property to implement two-way binding. In this case, theValueExpression
property is set internally.<EditForm> <DxComboBox Data="@Strings" ... @bind-Value="@Value"> </DxComboBox> </EditForm> @code { string newValue = null; string Value { get => newValue; set { newValue = value; InvokeAsync(StateHasChanged); } } // ... }
The following exception occurs if you do not use two-way binding or the ValueExpression
property:
DevExpress.Blazor.DxComboBox requires a value for the ‘ValueExpression’ property. It is specified automatically when you use two-way binding (‘bind-Value’).