public LiveMedicineListPage() { InitializeComponent(); App.CurrentNavigation = Navigation; var bindingContext = BindingContext as MedicineListPageViewModel; bindingContext.CurrentMedicineAction = (itemModel) => { Device.BeginInvokeOnMainThread(() => { MedicineItemModel medicineItemModel = null; MedicineItemGroupedModel medicineItemGroupModel = null; bindingContext.LiveMedicineList?.ForEach(i => { var ds = i.Where(j => j.IlacTarihi.date.Equals(itemModel.IlacTarihi.date)); if (ds.Any()) { medicineItemModel = ds.Last(); medicineItemGroupModel = i; return; } }); if (medicineItemModel != null && medicineItemGroupModel != null) { medicineList.ScrollTo(medicineItemModel, medicineItemGroupModel, ScrollToPosition.Start, true); } }); }; }
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if (value != null) { if (value is MedicineItemModel) { MedicineItemModel item = (MedicineItemModel)value; var date = item.IlacTarihi.date; var nowDate = DateTime.Now; var vDate = new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, 0); var nDate = new DateTime(nowDate.Year, nowDate.Month, nowDate.Day, nowDate.Hour, nowDate.Minute, 0); var param = parameter as string; if (vDate.Equals(nDate)) { switch (param) { case "Background": return(Color.FromHex("#0EA8A8")); case "Done": return(!item.IsUsed); case "SetAlert": return(false); } } else { switch (param) { case "Background": return(Color.Transparent); case "Done": return(date < nowDate && !item.IsUsed); case "SetAlert": return(date > nowDate); } } } } return(value); }