<SfGrid @ref="@Grid" DataSource="@Orders" AllowFiltering="true" AllowPaging="true" Height="315">
<GridColumns>
<GridColumn Field=@nameof(Order.OrderID) HeaderText="Order ID" TextAlign="TextAlign.Right" Width="120"></GridColumn>
<GridColumn Field=@nameof(Order.CustomerID) HeaderText="Customer Name" Width="150">
<FilterTemplate>
<SfMultiSelect TValue="string[]" Placeholder="e.g. VINET" ShowSelectAll="true" Mode="VisualMode.CheckBox" DataSource="@Dropdown">
<MultiSelectFieldSettings Value="CustomerID" Text="CustomerID"></MultiSelectFieldSettings>
<MultiSelectEvents ValueChange="OnChange" TValue="string[]"></MultiSelectEvents>
</SfMultiSelect>
</FilterTemplate>
</GridColumn>
<GridColumn Field=@nameof(Order.OrderDate) HeaderText=" Order Date" Format="d" Type="ColumnType.Date" TextAlign="TextAlign.Right" Width="130"></GridColumn>
<GridColumn Field=@nameof(Order.Freight) HeaderText="Freight" Format="C2" TextAlign="TextAlign.Right" Width="120"></GridColumn>
</GridColumns>
</SfGrid>
@code{
public void OnChange(@Syncfusion.Blazor.DropDowns.MultiSelectChangeEventArgs<string[]> args)
{
if (args.Value == null)
{
Grid.ClearFiltering("CustomerID");
}
else
{
Grid.FilterByColumn("CustomerID", "equal", args.Value);
}
}
} |
<SfGrid @ref="@Grid" DataSource="@Orders" AllowFiltering="true" AllowPaging="true" Height="315">
<GridColumns>
<GridColumn Field=@nameof(Order.OrderID) HeaderText="Order ID" TextAlign="TextAlign.Right" Width="120"></GridColumn>
<GridColumn Field=@nameof(Order.CustomerID) HeaderText="Customer Name" Width="150">
<FilterTemplate>
<SfMultiSelect TValue="string[]" ModelType="typeof(Data)" Placeholder="e.g. VINET" ShowSelectAll="true" Mode="VisualMode.CheckBox" DataSource="@Dropdown">
<MultiSelectFieldSettings Value="CustomerID" Text="CustomerID"></MultiSelectFieldSettings>
<MultiSelectEvents ValueChange="OnChange" TValue="string[]"></MultiSelectEvents>
<MultiSelectTemplates>
<FooterTemplate Context="FooterContext">
Test
</FooterTemplate>
</MultiSelectTemplates>
</SfMultiSelect>
</FilterTemplate>
</GridColumn>
<GridColumn Field=@nameof(Order.OrderDate) HeaderText=" Order Date" Format="d" Type="ColumnType.Date" TextAlign="TextAlign.Right" Width="130"></GridColumn>
<GridColumn Field=@nameof(Order.Freight) HeaderText="Freight" Format="C2" TextAlign="TextAlign.Right" Width="120"></GridColumn>
</GridColumns>
</SfGrid>
|
<SfMultiSelect TValue="string[]" ModelType="typeof(Order)" Placeholder="e.g. VINET" ShowSelectAll="true" Mode="VisualMode.CheckBox" DataSource="@Orders">
<MultiSelectFieldSettings Value="CustomerID" Text="CustomerID"></MultiSelectFieldSettings>
<MultiSelectEvents OnValueSelect="valueSelect" TValue="string[]"></MultiSelectEvents>
<MultiSelectTemplates>
<FooterTemplate Context="FooterContext">
Test
</FooterTemplate>
</MultiSelectTemplates>
</SfMultiSelect>
@code{
..................
..................
private void valueSelect(SelectEventArgs args)
{
// perform your own filtering
}
} |
private void valueSelect(SelectEventArgs args)
{
// perform your own filtering
var itemData = JsonConvert.DeserializeObject<GameFields>(args.ItemData != null ? args.ItemData.ToString() : "");
var value = itemData.Text;
} |