Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
82 changes: 82 additions & 0 deletions blazor/datagrid/filtering.md
Original file line number Diff line number Diff line change
Expand Up @@ -504,6 +504,88 @@ The **Like** filter processes single search patterns using the <b>%</b> symbol t

![Blazor DataGrid with like operator filtering](./images/blazor-datagrid-like-operator-filtering.webp)

## Diacritics filter

The diacritics filter feature handles text data that includes accented characters. Diacritics are accent marks added to letters (examples: é, ñ, ü, ç). By default, the grid ignores these characters during filtering.

This feature is essential for international data where names like “José” and “Jose” should be treated differently (or the same, depending on requirements).

To ensure diacritic characters are considered during filtering, set the `IgnoreAccent` property to **true** using [GridFilterSettings](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.SfGrid-1.html#Syncfusion_Blazor_Grids_SfGrid_1_FilterSettings).

The following example demonstrates diacritics filtering with the `IgnoreAccent` property set to **true**:

{% tabs %}
{% highlight razor tabtitle="Index.razor" %}

@using Syncfusion.Blazor.Grids

<SfGrid DataSource="@GridData" AllowFiltering="true" Height="273px">
<GridFilterSettings IgnoreAccent="true"></GridFilterSettings>
<GridColumns>
<GridColumn Field=@nameof(OrderData.EmployeeID) HeaderText="Employee ID" TextAlign="Syncfusion.Blazor.Grids.TextAlign.Right" Width="140"></GridColumn>
<GridColumn Field=@nameof(OrderData.Name) HeaderText="Name" Width="140"></GridColumn>
<GridColumn Field=@nameof(OrderData.ShipName) HeaderText="Ship Name" Width="170"></GridColumn>
<GridColumn Field=@nameof(OrderData.CustomerID) HeaderText="Customer ID" Width="140"></GridColumn>
</GridColumns>
</SfGrid>

@code {
public List<OrderData> GridData { get; set; }

protected override void OnInitialized()
{
GridData = OrderData.GetAllRecords();
}

}

{% endhighlight %}

{% highlight c# tabtitle="OrderData.cs" %}

public class OrderData
{
public static List<OrderData> Orders = new List<OrderData>();

public OrderData() { }

public OrderData(int EmployeeID, string Name, string CustomerID, string ShipName)
{
this.EmployeeID = EmployeeID;
this.Name = Name;
this.CustomerID = CustomerID;
this.ShipName = ShipName;
}

public static List<OrderData> GetAllRecords()
{
if (Orders.Count == 0)
{
Orders.Add(new OrderData(1, "Aeróbics", "VINET", "Vins et alcools Chevalier"));
Orders.Add(new OrderData(2, "Aerógrafía en Agua", "TOMSP", "Toms SpezialitAiten"));
Orders.Add(new OrderData(3, "Aerografía", "TAMSP", "Suprames dalices"));
Orders.Add(new OrderData(4, "Aeromodelaje", "HANAA", "Ottilies Kaseladen"));
Orders.Add(new OrderData(5, "Águilas", "VICTE", "Centro comercial Moctezuma"));
Orders.Add(new OrderData(6, "Álbumes de Delta", "HANAR", "Que Delacia"));
Orders.Add(new OrderData(7, "Álbumes de Música", "SUPRD", "Ernst Handel"));
Orders.Add(new OrderData(8, "Alusivos", "CHOPS", "Richter Supermarkt"));
Orders.Add(new OrderData(9, "Aerografía", "RICSU", "Wellington"));
Orders.Add(new OrderData(10, "Análisis de Escritura a Mano", "WELLI", "Victuailles"));
}
return Orders;
}

public int EmployeeID { get; set; }
public string Name { get; set; }
public string CustomerID { get; set; }
public string ShipName { get; set; }
}

{% endhighlight %}
{% endtabs %}

{% previewsample "https://blazorplayground.syncfusion.com/embed/rDBxXJVJDcKLCWHR?appbar=false&editor=false&result=true&errorlist=false&theme=fluent2" %}

## Filtering with case sensitivity

The Syncfusion<sup style="font-size:70%">&reg;</sup> Blazor DataGrid provides the flexibility to enable or disable case sensitivity during filtering. This feature allows control over whether filtering operations should consider character casing. Case sensitivity can be configured using the [EnableCaseSensitivity](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridFilterSettings.html#Syncfusion_Blazor_Grids_GridFilterSettings_EnableCaseSensitivity) property of [GridFilterSettings](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.SfGrid-1.html#Syncfusion_Blazor_Grids_SfGrid_1_FilterSettings)configuration.
Expand Down