From 92c52918e13dbbaf2a658945c349a6d04c29aa81 Mon Sep 17 00:00:00 2001 From: Roy Ben-Shabat Date: Wed, 16 Jan 2019 15:13:55 +0200 Subject: Added custom image support for bug reporting. Fixed issue with dispensers filter search. --- .../MachineStudio.Dispensers/ViewModels/MainViewVM.cs | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'Software/Visual_Studio/MachineStudio/Modules/MachineStudio.Dispensers/ViewModels') diff --git a/Software/Visual_Studio/MachineStudio/Modules/MachineStudio.Dispensers/ViewModels/MainViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/MachineStudio.Dispensers/ViewModels/MainViewVM.cs index d92d86580..2bd7e16a0 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/MachineStudio.Dispensers/ViewModels/MainViewVM.cs +++ b/Software/Visual_Studio/MachineStudio/Modules/MachineStudio.Dispensers/ViewModels/MainViewVM.cs @@ -11,6 +11,7 @@ using System.Data.Entity; using Tango.MachineStudio.Common.Notifications; using Tango.MachineStudio.Dispensers.Contracts; using Tango.Core.Commands; +using Tango.Core.Threading; namespace Tango.MachineStudio.Dispensers.ViewModels { @@ -19,6 +20,7 @@ namespace Tango.MachineStudio.Dispensers.ViewModels private ObservablesContext _dbContext; private ObservablesContext _activeContext; private INotificationProvider _notification; + private ActionTimer _filter_timer; private ObservableCollection _dispensers; public ObservableCollection Dispensers @@ -68,6 +70,7 @@ namespace Tango.MachineStudio.Dispensers.ViewModels public MainViewVM(INotificationProvider notificationProvider) { _notification = notificationProvider; + _filter_timer = new ActionTimer(TimeSpan.FromMilliseconds(200)); ManageDispenserCommand = new RelayCommand(() => LoadSelectedDispenser(), () => SelectedDispenser != null); BackToDispensersCommand = new RelayCommand(() => { View.NavigateTo(DispensersNavigationView.DispensersView); }); @@ -76,13 +79,16 @@ namespace Tango.MachineStudio.Dispensers.ViewModels RemoveDispenserCommand = new RelayCommand(RemoveSelectedDispenser, () => SelectedDispenser != null); } - private async void OnFilterChanged() + private void OnFilterChanged() { if (Filter != null) { - IsFree = false; - Dispensers = (await _dbContext.Dispensers.Where(x => x.SerialNumber.ToLower().StartsWith(Filter.ToLower())).Include(x => x.DispenserType).Include(x => x.IdsPacks).ToListAsync()).ToObservableCollection(); - IsFree = true; + _filter_timer.ResetReplace(() => + { + IsFree = false; + Dispensers = _dbContext.Dispensers.Where(x => x.SerialNumber.ToLower().StartsWith(Filter.ToLower())).Include(x => x.DispenserType).Include(x => x.IdsPacks).ToList().ToObservableCollection(); + IsFree = true; + }); } } -- cgit v1.3.1