private async void ConfigureInformationLabels() { // Sometimes the view may appear while items are still being retrieved from the server. // Repeatedly waiting until the items have been retrieved ensures that the hours worked text is correct. while (AllItemsViewModel.IsBusy) { await Task.Delay(150); } txtHoursWorkedToday.Text = "Today: " + AllItemsViewModel.NumberHoursWorkedOnDay(DateTime.Now) + " hrs"; txtHoursWorkedThisWeek.Text = "This Period: " + AllItemsViewModel.NumberHoursWorkedOnDay() + " hrs"; var startCurrent = ProjectSettings.GetStartOfCurrentPayPeriod().Date; var startEntires = AllItemsViewModel.GetStartOfPayPeriod().Date; if (startEntires.CompareTo(startCurrent) < 0) { txtWarningLabel.AdjustsFontSizeToFitWidth = true; txtWarningLabel.Text = ViewModel.NeedToSubmitTimecardWarningMessage; } else { txtWarningLabel.Text = string.Empty; } RemoveLoadingIndicator(); }
private void ConfigureDatePicker() { datePicker = new UIDatePicker { Mode = UIDatePickerMode.Date, Date = (NSDate)AllItemsViewModel.GetInitialPickerDate(), MinimumDate = (NSDate)AllItemsViewModel.GetStartOfPayPeriod(), MaximumDate = (NSDate)AllItemsViewModel.GetEndOfPayPeriod(), TimeZone = NSTimeZone.LocalTimeZone }; // Whenever the date changes, set the date text field to the value of the picker datePicker.ValueChanged += (sender, e) => { txtDateField.Text = ((DateTime)datePicker.Date).ToLocalTime().ToString(ProjectSettings.DateFormat); }; txtDateField.Text = ((DateTime)datePicker.Date).ToLocalTime().ToString(ProjectSettings.DateFormat); txtDateField.InputView = datePicker; if (EditingItem != null) { // If the user is editing this entry, set the picker to the previously selected date txtDateField.Text = EditingItem.JobDate.ToLocalTime().ToString(ProjectSettings.DateFormat); datePicker.SetDate((NSDate)EditingItem.JobDate, false); } }