FMX.ListView.TListViewBase.OnSearchChange
From RAD Studio API Documentation
Delphi
property OnSearchChange: TNotifyEvent read FOnSearchChange write FOnSearchChange;
C++
__property System::Classes::TNotifyEvent OnSearchChange = {read=FOnSearchChange, write=FOnSearchChange};
Properties
| Type | Visibility | Source | Unit | Parent |
|---|---|---|---|---|
| event | public | FMX.ListView.pas FMX.ListView.hpp |
FMX.ListView | TListViewBase |
Description
Occurs when the search box in a list view loses the focus and its content has changed since it gained the focus. This event exposes the OnChange event of the TSearchBox that implements the search box of a list view.
For example, the code snippet below updates the text in a status bar on this event to show the number of items left in the list after the specified filter is applied:
Delphi:
procedure TMainForm.ListViewSearchChange(Sender: TObject); var I: Integer; SearchBox: TSearchBox; List: TListView; begin List := Sender as TListView; for I := 0 to List.Controls.Count-1 do if List.Controls[I].ClassType = TSearchBox then begin SearchBox := TSearchBox(List.Controls[I]); Break; end; StatusBar.Text := IntToStr(List.Items.Count) + ' list items match ' + QuotedStr(SearchBox.Text) + '.'; end;
C++:
void __fastcall TMainForm::ListViewSearchChange(TObject *Sender) { TSearchBox* searchBox; TListView* list = reinterpret_cast<TListView*>(Sender); for (int i = 0; i < list->Controls->Count; i++) { searchBox = dynamic_cast<TSearchBox*>(list->Controls->Items[i]); if (searchBox) break; } MainForm->StatusBar->Text = UnicodeString(list->Items->Count) + " list items match " + QuotedStr(searchBox->Text) + "."; }