Improve filtering

This commit is contained in:
TheXamlGuy
2024-07-17 22:13:38 +01:00
parent 8dbaa17c0e
commit 3ec35a6d44
3 changed files with 9 additions and 5 deletions
+1 -1
View File
@@ -18,7 +18,7 @@ public class ItemCreatedHandler(IServiceProvider serviceProvider,
IServiceFactory serviceFactory = serviceScope.ServiceProvider.GetRequiredService<IServiceFactory>(); IServiceFactory serviceFactory = serviceScope.ServiceProvider.GetRequiredService<IServiceFactory>();
IDecoratorService<Item<(Guid, string)>> decoratorService = serviceScope.ServiceProvider.GetRequiredService<IDecoratorService<Item<(Guid, string)>>>(); IDecoratorService<Item<(Guid, string)>> decoratorService = serviceScope.ServiceProvider.GetRequiredService<IDecoratorService<Item<(Guid, string)>>>();
if (serviceFactory.Create<ItemNavigationViewModel>(args => args.Initialize(), if (serviceFactory.Create<ItemNavigationViewModel>(args => args.Initialize(), "All",
id, name, "Description", category, true) id, name, "Description", category, true)
is ItemNavigationViewModel viewModel) is ItemNavigationViewModel viewModel)
{ {
+7 -3
View File
@@ -3,9 +3,9 @@ using Toolkit.Foundation;
namespace Wallet; namespace Wallet;
[Notification(typeof(CreateEventArgs<ItemNavigationViewModel>), nameof(ItemNavigationCollectionViewModel))] [Notification(typeof(CreateEventArgs<ItemNavigationViewModel>), nameof(Filter))]
[Notification(typeof(InsertEventArgs<ItemNavigationViewModel>), nameof(ItemNavigationCollectionViewModel))] [Notification(typeof(InsertEventArgs<ItemNavigationViewModel>), nameof(Filter))]
[Notification(typeof(MoveToEventArgs<ItemNavigationViewModel>), nameof(ItemNavigationCollectionViewModel))] [Notification(typeof(MoveToEventArgs<ItemNavigationViewModel>), nameof(Filter))]
[Notification(typeof(NotifyEventArgs<Search<string>>), nameof(ItemNavigationCollectionViewModel))] [Notification(typeof(NotifyEventArgs<Search<string>>), nameof(ItemNavigationCollectionViewModel))]
public partial class ItemNavigationCollectionViewModel : public partial class ItemNavigationCollectionViewModel :
ObservableCollection<ItemNavigationViewModel>, ObservableCollection<ItemNavigationViewModel>,
@@ -31,10 +31,14 @@ public partial class ItemNavigationCollectionViewModel :
{ {
Template = template; Template = template;
Named = $"{named}"; Named = $"{named}";
Filter = filter;
this.configuration = configuration with { Filter = filter }; this.configuration = configuration with { Filter = filter };
} }
[ObservableProperty]
private string? filter;
public IContentTemplate Template { get; set; } public IContentTemplate Template { get; set; }
public Task Handle(NotifyEventArgs<Filter> args) public Task Handle(NotifyEventArgs<Filter> args)
@@ -40,7 +40,7 @@ public class ItemNavigationCollectionViewModelActivatedHandler(IMediator mediato
decoratorService.Set(item); decoratorService.Set(item);
cache.Add(item); cache.Add(item);
publisher.Publish(Create.As(viewModel), nameof(ItemNavigationCollectionViewModel)); publisher.Publish(Create.As(viewModel), configuration.Filter);
} }
selected = false; selected = false;