ASP.NET MVC コントロールヘルプ
ValueFilter クラス
ファイル
wijmo.grid.filter.js
モジュール
wijmo.grid.filter
派生クラス
FlexSheetValueFilter
インターフェイス
IColumnFilter

FlexGridの列の値フィルタを定義します。

値フィルタには、グリッドに表示する値の明示的なリストが含まれます。

コンストラクタ

プロパティ

メソッド

コンストラクタ

constructor

constructor(column: Column): ValueFilter

ValueFilterクラスの新しいインスタンスを初期化します。

パラメーター
戻り値
ValueFilter

プロパティ

column

フィルタリングするColumn を取得します。

Column

dataMap

未加工の値をこのフィルタを編集する際に表示される表示値に変換するために使用されるDataMap を取得または設定します。

DataMap

exclusiveValueSearch

filterTextプロパティで選択された値のみをフィルタに含めるかどうかを決定する値を取得または設定します。

このプロパティのデフォルト値は**true**です。この動作はExcelと同じです。

この動作を無効にするには、このプロパティを**false**に設定します。 その場合、リストに表示される項目のみが検索され、 フィルタに含まれる項目が検索されません。

boolean

filterText

表示値のリストのフィルタリングに使用される文字列を取得または設定します。

string

isActive

このフィルタがアクティブかどうかを示す値を取得します。

一部の値が選択され、一部が選択されていない場合、フィルタはアクティブです。 すべての値が同じ状態(選択した状態または選択解除した状態)の場合、フィルタはアクティブではありません。

boolean

maxValues

表示値のリスト内にある要素の最大数を取得または設定します。

非常に多くの項目をリストに追加すると、検索が困難になり、パフォーマンスが損なわれます。このプロパティは任意の時点で表示される項目数を制限しますが、ユーザーは検索ボックスを使用して目的の項目をフィルタ処理することができます。

このプロパティのデフォルト値は**250**です。

次のコードは、この値を1,000,000に変更し、事実上、フィールドのすべての一意の値を一覧します。

```typescript import { FlexGridFilter} from '@grapecity/wijmo.grid.filter';

// 'id'列のmaxItemsプロパティを変更します let f = new FlexGridFilter(theGrid); f.getColumnFilter('id').valueFilter.maxValues = 1000000; ```

number

showValues

値リストに選択された(チェックされた)値を持つオブジェクトを 取得または設定します。

フィルタがアクティブでない場合、このプロパティはnullに設定され、 データソースに存在するすべての値がリストに表示されます。

フィルタがアクティブな場合(ユーザーがリストから一部の値を選択した場合)、showValuesプロパティは、 プロパティ名が選択された値の表示値であるオブジェクトに設定されます。

たとえば、値リストに国名が含まれていて、「米国」と「日本」を選択した場合、showValuesプロパティは次を返します。

```javascript { Japan: true, US: true } ```

any

sortValues

エディタに表示するときに値をソートするかどうかを決定する値を取得または設定します。

uniqueValues を使用して値のカスタムリストを提供した上、それらの値の順序を維持したい場合、このプロパティは特に便利です。

boolean

uniqueValues

Gets or sets an array containing the unique values to be displayed on the list.

If this property is set to null, the list will be filled based on the grid data.

データからリストを作成するより、一意の値のリストを明示的に割り当てる方が効率的です。また、データがサーバー上でフィルタ処理される場合、値フィルタが 適切に動作するには、そうする必要があります(この場合、一部の値が クライアント上に存在しない可能性があり、リストが不完全になるため)。

デフォルトでは、フィルタエディタは、一意の値をユーザーに表示する際に値をソートします。 この動作を抑止して、指定した順序で値を表示する場合は、 sortValues プロパティをfalseに設定します。

たとえば、次のコードは、ValueFilter で'country'フィールドに連結された列に使用される国名リストを提供します。

```typescript import { FlexGridFilter} from '@grapecity/wijmo.grid.filter';

// FlexGridのフィルタを作成します let filter = new FlexGridFilter(grid);

// 一意の値のリストを国フィルタに割り当てます let cf = filter.getColumnFilter('country'); cf.valueFilter.uniqueValues = ['Austria', 'Belgium', 'Chile', 'Denmark']; ```

any[]

メソッド

apply

apply(value): boolean

値がフィルタに合致するかどうかを示す値を取得します。

パラメーター
  • value:

    The value to test.

戻り値
boolean

clear

clear(): void

フィルタをクリアします。

戻り値
void

getUniqueValues

getUniqueValues(filtered?: boolean): any[]

このcolumnのすべての一意の値を表す オブジェクトを含む配列を取得します。

返される配列内のオブジェクトには、 value(データ値)およびtext(書式設定されているデータ値)プロパティが含まれます。

uniqueValuesプロパティが値の配列に設定されている場合、その配列はデータソースとして使用されます。

uniqueValuesがnullの場合、メソッドはデータソース内のすべての項目をスキャンし、 すべての一意の値を含む配列を作成して返します。

このメソッドは、ValueFilterEditorクラスで使用され、 ユーザーに表示される値のリストを設定します。

パラメーター
  • filtered: boolean Optional

    Whether to apply all other filters when retrieving the values from the data source.

戻り値
any[]

implementsInterface

implementsInterface(interfaceName: string): boolean

Returns true if this object supports a given interface.

パラメーター
  • interfaceName: string

    Name of the interface to look for.

戻り値
boolean