using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Linq; using System.Linq.Expressions; using System.Threading.Tasks; using comal.timesheets.Tasks; using Comal.Classes; using InABox.Configuration; using InABox.Core; using Xamarin.Forms; using Xamarin.Forms.Xaml; using XF.Material.Forms.UI; using XF.Material.Forms.UI.Dialogs; using Plugin.Media; using InABox.Mobile; using System.IO; using comal.timesheets.QAForms; namespace comal.timesheets.Deliveries { [XamlCompilation(XamlCompilationOptions.Compile)] public partial class DeliveryDocket { int deliveryNumber; ObservableList dockets = new ObservableList(); List racks = new List(); string numberOfItemsText = "Number of Items: "; public DeliveryDocket(int _deliveryNumber, ObservableList _dockets) { InitializeComponent(); deliveryNumber = _deliveryNumber; dockets = _dockets; LoadData(); } private void LoadData() { Title = "Delivery: " + deliveryNumber; numberOfItems.Text = numberOfItemsText + dockets.Count(); DeliveryItemList.ItemsSource = dockets; } private void SearchEnt_Changed(object sender, EventArgs e) { var list = dockets.Where(x => x.Rack.StartsWith(searchEnt.Text) || x.Rack.StartsWith(searchEnt.Text.ToUpper()) || x.Rack.StartsWith(searchEnt.Text.ToLower()) || x.Rack.StartsWith(UpperCaseFirst(searchEnt.Text)) || x.Rack.Contains(searchEnt.Text) || x.Rack.Contains(searchEnt.Text.ToUpper()) || x.Rack.Contains(searchEnt.Text.ToLower()) || x.Rack.Contains(searchEnt.Text) || x.Description.StartsWith(searchEnt.Text) || x.Description.StartsWith(searchEnt.Text.ToUpper()) || x.Description.StartsWith(searchEnt.Text.ToLower()) || x.Description.StartsWith(UpperCaseFirst(searchEnt.Text)) || x.Description.Contains(searchEnt.Text) || x.Description.Contains(searchEnt.Text.ToUpper()) || x.Description.Contains(searchEnt.Text.ToLower()) || x.Description.Contains(UpperCaseFirst(searchEnt.Text)) || x.Setout.StartsWith(searchEnt.Text) || x.Setout.StartsWith(searchEnt.Text.ToUpper()) || x.Setout.StartsWith(searchEnt.Text.ToLower()) || x.Setout.StartsWith(UpperCaseFirst(searchEnt.Text)) || x.Setout.Contains(searchEnt.Text) || x.Setout.Contains(searchEnt.Text.ToUpper()) || x.Setout.Contains(searchEnt.Text.ToLower()) || x.Setout.Contains(UpperCaseFirst(searchEnt.Text)) || x.Requi.StartsWith(searchEnt.Text) || x.Requi.StartsWith(searchEnt.Text.ToUpper()) || x.Requi.StartsWith(searchEnt.Text.ToLower()) || x.Requi.StartsWith(UpperCaseFirst(searchEnt.Text)) || x.Requi.Contains(searchEnt.Text) || x.Requi.Contains(searchEnt.Text.ToUpper()) || x.Requi.Contains(searchEnt.Text.ToLower()) || x.Requi.Contains(UpperCaseFirst(searchEnt.Text)) ); DeliveryItemList.ItemsSource = list; numberOfItems.Text = numberOfItemsText + list.Count(); } static String UpperCaseFirst(string s) { char[] a = s.ToCharArray(); a[0] = char.ToUpper(a[0]); return new string(a); } } }