FMX.ListView.TListViewBase.OnFilter

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

property OnFilter: TFilterEvent read FOnFilter write SetOnFilter;

C++

__property Fmx::Searchbox::TFilterEvent OnFilter = {read=FOnFilter, write=SetOnFilter};

プロパティ

種類 可視性 ソース ユニット
event public
FMX.ListView.pas
FMX.ListView.hpp
FMX.ListView TListViewBase


説明

検索ボックスのフィルタリング時に発生します。

OnFilter のイベント ハンドラを記述すると、TSearchBox のカスタム検索フィルタを設定できます。

TFilterEvent 型の OnFilter イベントには次のパラメータがあります。

パラメータ 説明
Sender 呼び出されるイベント ハンドラの所属先のオブジェクトです。
AFilter さまざまな項目(AValue パラメータ)の中からフィルタリングされる文字列です。
AValue AFilter の検索が実行される項目の文字列です。
Accept フィルタ条件が存在する場合に使用する論理型パラメータです。

フィルタ条件を追加するために Accept を使用します。値がフィルタ条件を通過する場合、AcceptTrue でなければなりません。


たとえば、以下のサンプル コードでは、項目(AValue)がフィルタリング文字列(AFilter)で始まるかどうかを判定するカスタム フィルタを追加しています。

Delphi の場合:
procedure TForm2.ListView1Filter(Sender: TObject; const AFilter, AValue: string;
  var Accept: Boolean);
begin
  Accept :=  AValue.StartsWith(AFilter, True);
end;
C++ の場合:
void __fastcall TForm1::ListView1Filter(TObject *Sender, const UnicodeString AFilter,
		  const UnicodeString AValue, bool &Accept)
{
	Accept = StartsStr(AFilter.LowerCase(), AValue.LowerCase());
}

メモ: SearchVisible プロパティを有効にすると、リスト ビューの上部に検索ボックスが表示されます。

関連項目