TmsFmxTableView: how to fetch next rows

I want to use TableView component to display data from the table placed on the server. Table is huge, so I load only 50 records. When user scrolls the screen and goes to the end, I want to fetch another 50 records and so on. 


But I do not know how to catch the event, when user scrolls TableView to the end. 
I have found the event OnManualLoadNextBuffer, but it is not called, when user reaches the end of the list. During scrolling the item is not selected, so OnSelectedItem event is not a solution.

How can I catch the event or how to organize it using TableView?

This code snippet applied to a default TTMSFMXTableView shows how this can be done:


procedure TForm2.FormCreate(Sender: TObject);
var
  i: integer;
  it: TTMSFMXTableViewItem;
begin
  TMSFMXTableView1.AutoLoadBuffer := false;
  TMSFMXTableView1.BeginUpdate;
  TMSFMXTableView1.Items.Clear;
  for I := 0 to 1000 do
  begin
    it := TMSFMXTableView1.Items.Add;
    it.Caption := 'Item ' + inttostr(I);
    it.Description := 'Hello World !';
  end;
  TMSFMXTableView1.EndUpdate;
end;

procedure TForm2.TMSFMXTableView1ManualLoadNextBuffer(Sender: TObject);
begin
  TMSFMXTableView1.LoadNextBuffer();
end;

procedure TForm2.TMSFMXTableView1ManualLoadPreviousBuffer(Sender: TObject);
begin
  TMSFMXTableView1.LoadPreviousBuffer();
end;

Thank you for quick reponse. But this approach requires to load all the records from the server at start. Usually the user will want to look at first 50 records, but sometimes he/she wants to scroll and view many thousands of records. I would like to fetch next records from the server only if they are required by user. That is why I need to catch the moment, when user reaches (scrolls to) the end of the list.

You can fill dummy TTMSFMXTableViewItems and fill in the item data fetched from the server from the OnManualLoadNextBuffer / OnManualLoadPreviousBuffer