|
@using Syncfusion.Blazor.QueryBuilder
<SfQueryBuilder TValue="EmployeeDetails">
<QueryBuilderColumns>
<QueryBuilderColumn Field="EmployeeID" Label="Employee ID" Type="ColumnType.Number" Operators="@operators"></QueryBuilderColumn>
</QueryBuilderColumns>
</SfQueryBuilder>
@code {
private List<OperatorsModel> operators = new List<OperatorsModel> {
new OperatorsModel { Text="In",Value="in"},
new OperatorsModel{Text="NotIn",Value="notin"}
};
public class EmployeeDetails{
public int EmployeeID { get; set; }
}
} |
|
<QueryBuilderTemplates>
<ValueTemplate>
@if (context.Operator == "notin" || context.Operator == "in")
{
<SfDropDownList TValue="string" TItem="ItemFields" DataSource="@Items" @bind-Value="@DefaultValue">
<DropDownListFieldSettings Text="Id"></DropDownListFieldSettings>
<DropDownListEvents TItem="ItemFields" TValue="string" ValueChange="e => OnChange(e, context)"></DropDownListEvents>
</SfDropDownList>
}
else
{
<SfTextBox Placeholder='Enter Value' ValueChange="e => Change(e, context)"></SfTextBox>
}
</ValueTemplate>
</QueryBuilderTemplates> |
|
<SfQueryBuilder TValue="Orders" @ref="qb" DataSource="@DataSource" Width="70%">
<QueryBuilderEvents TValue="Orders" Created="created" RuleChanged="change"></QueryBuilderEvents>
<QueryBuilderRule Condition="and" Rules="@Rules"></QueryBuilderRule>
<QueryBuilderColumns>
<QueryBuilderColumn Field="CustomerID" Label="CustomerID" Type=Syncfusion.Blazor.QueryBuilder.ColumnType.String></QueryBuilderColumn>
<QueryBuilderColumn Field="EmployeeID" Label="EmployeeID" Type=Syncfusion.Blazor.QueryBuilder.ColumnType.Number>
<QueryBuilderTemplates>
<ColumnTemplate>
<SfDropDownList TItem="string" TValue="string" Width="340px" DataSource="qb.Columns.Select(e => e.Field)" @bind-Value="context.Label">
<DropDownListFieldSettings Text="CustomerID"></DropDownListFieldSettings>
<DropDownListEvents TItem="string" TValue="string" ValueChange="e => ChangeOperator(e, context)"></DropDownListEvents>
</SfDropDownList>
<div>
<SfSlider TValue="int" Min="0" Max="20" Value="@DefaultSliderValue">
<SliderEvents TValue="int" OnChange="e => SliderChange(e, context)"></SliderEvents>
<SliderTicksData Placement="Placement.Before" LargeStep="5" SmallStep="1" ShowSmallTicks="true"></SliderTicksData>
</SfSlider>
</div>
</ColumnTemplate>
</QueryBuilderTemplates>
</QueryBuilderColumn>
<QueryBuilderColumn Field="Verified" Label="Verified" Type=Syncfusion.Blazor.QueryBuilder.ColumnType.Boolean Values=@Values></QueryBuilderColumn>
<QueryBuilderColumn Field="ShipName" Label="ShipName" Type=Syncfusion.Blazor.QueryBuilder.ColumnType.String></QueryBuilderColumn>
<QueryBuilderColumn Field="OrderDate" Label="OrderDate" Type=Syncfusion.Blazor.QueryBuilder.ColumnType.Date Format="dd/MM/yyyy"></QueryBuilderColumn>
<QueryBuilderColumn Field="ShipCountry" Label="ShipCountry" Type=Syncfusion.Blazor.QueryBuilder.ColumnType.String></QueryBuilderColumn>
<QueryBuilderColumn Field="ShipAddress" Label="ShipAddress" Type=Syncfusion.Blazor.QueryBuilder.ColumnType.String></QueryBuilderColumn>
</QueryBuilderColumns>
</SfQueryBuilder>
|
|
<QueryBuilderTemplates>
<ValueTemplate>
<SfDropDownList TValue="string" TItem="ItemFields" DataSource="@Items" @bind-Value="@DefaultValue" PopupWidth="Auto">
<DropDownListFieldSettings Text="Id"></DropDownListFieldSettings>
<DropDownListEvents TItem="ItemFields" TValue="string" ValueChange="e => OnChange(e, context)"></DropDownListEvents>
</SfDropDownList>
</ValueTemplate>
</QueryBuilderTemplates> |
|
<QueryBuilderTemplates>
<ColumnTemplate>
<SfDropDownList TItem="string" TValue="string" width="auto" DataSource="qb.Columns.Select(e => e.Field)" @bind-Value="context.Label">
<DropDownListFieldSettings Text="CustomerID"></DropDownListFieldSettings>
<DropDownListEvents TItem="string" TValue="string" ValueChange="e => ChangeField(e, context)"></DropDownListEvents>
</SfDropDownList>
<SfDropDownList TItem="OperatorsModel" TValue="string" Width="200px" DataSource="Operators" @bind-Value="DefaultOperaterValue">
<DropDownListFieldSettings Text="Text" Value="Value"></DropDownListFieldSettings>
<DropDownListEvents TItem="OperatorsModel" TValue="string" ValueChange="e => ChangeOperator(e, context)"></DropDownListEvents>
</SfDropDownList>
<div>
<SfSlider TValue="int" Min="0" Max="20" Value="@DefaultSliderValue">
<SliderEvents TValue="int" OnChange="e => SliderChange(e, context)"></SliderEvents>
<SliderTicksData Placement="Placement.Before" LargeStep="5" SmallStep="1" ShowSmallTicks="true"></SliderTicksData>
</SfSlider>
</div>
</ColumnTemplate>
</QueryBuilderTemplates> |
|
<QueryBuilderRule Condition="or" Rules="Rules"></QueryBuilderRule> |
|
List<RuleModel> Rules = new List<RuleModel>()
{
new RuleModel { Field="Country", Label="Country", Type="String", Operator="equal", Value = "England" },
new RuleModel { Field="EmployeeID", Label="EmployeeID", Type="Number", Operator="notequal", Value = 1001 }
}; |