特定の列のフィルター、および全てのフィルターをプログラムからクリアする方法について解説します。

IgbGrid の設定

まず、IgbGrid コンポーネントを@refディレクティブで参照できるように設定します。

<IgbGrid AllowFiltering="true" 
         FilterMode="FilterMode.ExcelStyleFilter"
         @ref="grid">
    ....
</IgbGrid>

ClearFilterAsync メソッドの使用

フィルターをクリアするには、ClearFilterAsync メソッドを使用します。これにより、列ごとや全体のフィルターを簡単に解除できます。

  • 特定の列のフィルターをクリアする場合、クリアしたい列のフィールド名(例えば “Name”)をClearFilterAsync メソッドの引数として渡します。
  • すべてのフィルターをクリアするには、引数を空文字 (“”) にすることで全列のフィルターを一度に解除できます。

以下は、氏名列のフィルターを解除する ClearNameFilter メソッドと、すべてのフィルターをクリアするClearAllFilter メソッドの例です。

private IgbGrid? grid;
private async Task ClearNameFilter()
{
    if (grid != null)
    {
        await grid.ClearFilterAsync("Name");
    }
}
private async Task ClearAllFilter()
{
    if (grid != null)
    {
        await grid.ClearFilterAsync("");
    }
}

ボタンでフィルターをクリアする

以下のコードは、フィルターをクリアするためのボタン設定です。ボタンをクリックすることで、それぞれのメソッドが呼び出され、フィルターがクリアされます。

<IgbButton @onclick="ClearNameFilter">氏名のフィルターをクリア</IgbButton>
<IgbButton @onclick="ClearAllFilter">全てのフィルターをクリア</IgbButton>
Tagged:

製品について

Ignite UI for Blazor