Jump to content
Sign in to follow this  
Luke

[TfgCollectionView] How to filter TfgCollectionView by value in TfgSearchEdit?

Recommended Posts

Hi All,
I'm trying to use a tfgSearchEdit with a tfgCollectionView.
I'm searching the better way to set the focus to the CollectionViewitem that match my search value.

There is a demo that explain this management ?
I've seen that i can fill the SearchEdit.Suggestions with the CollectionViewItems field otherwise i can do a binarysearch in the Tlist<> that is linked to the CollectionView but i've to sort the list.

Can you suggest a best practise for that ?
Thanks a lot,
Luca.

 

Share this post


Link to post
Share on other sites

Hello Luke,

TfgSearchEdit doesn't depend on other controls. It just provide text input field with autocomplete functionality. And it supports 2 ways for getting autocomplete values:

  1. Static. Manual setting of values via Suggestions property. For small values list.
  2. Dynamic. You fill suggestions list in OnChanging event.

The CollectionView filtering method is fully provided to you. For example:

  1. You can filter your collection view model data (related TList, model, DAO and etc) and invoke ReloadItems.
  2. Also if you provide unique item's id via OnGetItemID, collection view will animate refreshing items. So user will see which items are disappeared.

Thank you

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By Luke
      Hi All,
      i'm testing tfgCollectionView with this rest resource : http://jsonplaceholder.typicode.com/photos
      In this test my CollectionView Style has 1 fgImage and 1 fgLabel.
      I get the RestResouce with a TRESTRequest.ExecuteAsync and it works perfectly.
      When i've the ExecuteAsync CallBack i parse the JSON output string and i fill my Photos collection (TList).
      I do this step with a separate Task because i've 5000 items ( more or less).
      When i link data to the CollectionView i call fgCollectionViewGetItemCount and fgCollectionView1BindItem.
      If i bind only the fgLabel all works perfectly.
      My problem is link the tfgImage to the thumbnail.
      I post my code:
      procedure TFramePhoto.fgCollectionView1BindItem(Sender: TObject;const AIndex: Integer; const AStyle: string; const AItem: TfgItemWrapper);
      VAR Item:TPhotoData;
      begin
        TRY
          Item:=RestPhotos.Items[AIndex];
          AItem.GetControlByLookupName<TfgLabel>('LblTitle').Text := Item.Ftitle;
          TfgAssetsManager.Current.AddBitmapFromUrlAsync(Item.FalbumId, Item.FthumbnailUrl,
          procedure (const AResultCode: Integer; const AResultMessage: string) begin
            AItem.GetControlByLookupName<TfgImage>('ImgAlbum').ImageName := Item.FalbumId;
          end);
        EXCEPT ON E:EXCEPTION DO
          FGX.Log.TfgLog.Log(TfgLogLevel.Debug,'fgCollectionView1BindItem ' + e.Message);
        END;
      end;
       
      Actually i'm saving the images in assets but i think it is a bad idea...
      Can you suggest a best practice for this scenario ?

      Thanks a lot guys,
      Best Regards.

       
       
    • By Yaroslav Brovin
      В ближайшем релизе FGX Native 1.1.4.0 появится расширение возможностей TfgCollectionView. Речь идет о перетаскивании элементов списка для ручного упорядочивания элементов.
      video_2020-03-27_04-16-58.mp4
      Для того, чтобы воспользоваться новым функционалом нужно:
      1. Определить, за какой компонент элемента можно будет выполнять перетаскивание элемента.
      Например, можно использовать TfgImage с общепринятой иконкой перетаскивания элементов.
      2. Указать для такого компонента стиля имя через LookupName.

      3. Указать в настройках TfgCollectionView имя компонента из пункта (3).

      4. После перетаскивания элементов в списке, отразить изменение последовательности элементов в вашей модели данных в событии OnMovingItem. 
    • By Stas
      Здравствуйте
      У меня ни разу не получилось, чтобы это событие как-то себя проявило.
      Что я делаю не так ?
      Спасибо
    • By s.fedotenko@gmail.com
      Добрый день.
      При свойстве SelectionMode = SingleSelect при изменении выделения наблюдается заметное подтормаживание переключения выделенного итема. 
      При этом если мы находимся в начале списка, подтормаживания нет, а при прокрутке вниз - проявляется. При SelectionMode = None такого эффекта нет.
       
       
       
    • By Cinemaizer
      Добрый день!
      В примере CollectionViewSelectionDemo замечена проблема отрисовки в динамике - видео прилагаю. Просто тапаю список, не тащу, происходит какое то смещение на Xiaomi Redmi Note 5 (MIUI 11).
      Скачать видео 20200107_215136.mp4
      Скачать видео
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...