public List <ReportDetailViewModel> GetDetail(int Id, ReportBindingModel model) { var engines = _inspection.GetFilteredList( new InspectionsBindingModel { UserId = Id, Selected = model.Selected }); var list = new List <ReportDetailViewModel>(); foreach (var engine in engines) { var record = new ReportDetailViewModel { Name = engine.Name, Details = new List <Tuple <string, decimal> >(), }; foreach (var detail in engine.costInspections) { record.Details.Add(new Tuple <string, decimal>(_cost.GetElement(new CostBindingModel { Id = detail.Key }).Name, detail.Value)); } list.Add(record); } return(list); }
public ExpenseActionPage(ReportDetailViewModel parentViewModel) { NavigationPage.SetTitleIcon(this, "icon.png"); ViewModel = new ExpenseActionViewModel(parentViewModel); BindingContext = ViewModel; Title = "New Expense"; ViewModel.IsEditable = true; AddConditionalUI(); Content = formLayout; Padding = new Thickness(0, Device.OnPlatform(20, 0, 0), 0, 0); #region Set Bindings And Event Handlers nameEntry.SetBinding(Entry.TextProperty, "Name"); shortDescriptionEntry.SetBinding(Entry.TextProperty, "ShortDescription"); priceEntry.SetBinding(Entry.TextProperty, "Price", BindingMode.TwoWay, null, "$ {0}"); date.SetBinding(DatePicker.DateProperty, "Date"); saveButton.Clicked += (object sender, EventArgs e) => { ViewModel.Save(); Navigation.PopModalAsync(); }; cancelButton.Clicked += (object sender, EventArgs e) => { Navigation.PopModalAsync(); }; #endregion }
public NewReportPage() { NavigationPage.SetTitleIcon(this, "icon.png"); ViewModel = new ReportDetailViewModel(new ExpenseReport()); BindingContext = ViewModel; Title = "New Report"; Content = new StackLayout { Padding = new Thickness(0, 0, 0, 10), Children = { dashboard, expenseList, saveReportButton, cancelReportButton } }; #region Set Event Handlers and Bindings saveReportButton.Clicked += HandleSaveReport; cancelReportButton.Clicked += HandleCancelReport; addExpense.Clicked += HandleAddExpense; expenseList.ItemSelected += HandleItemSelected; expenseList.SetBinding <ReportDetailViewModel>(ListView.ItemsSourceProperty, vm => vm.Report.Expenses); reportName.SetBinding <ReportDetailViewModel>(Entry.TextProperty, vm => vm.Report.ReportName, BindingMode.TwoWay); reportTotal.SetBinding <ReportDetailViewModel>(Label.TextProperty, vm => vm.ReportTotal, BindingMode.OneWay); status.SetBinding <ReportDetailViewModel>(Label.TextProperty, vm => vm.ReportStatus); #endregion }
public ReportDetailPage(ExpenseReport report) { NavigationPage.SetTitleIcon(this, "icon.png"); ViewModel = new ReportDetailViewModel(report); BindingContext = ViewModel; AddConditionalUI(); Content = layout; if (report.Status == "PendingApproval") { submitButton.Text = "Unsubmit Report"; } #region Set Event Handlers and Bindings if (submitButton != null) { submitButton.Clicked += HandleSubmitReport; } if (deleteButton != null) { deleteButton.Clicked += HandleDeleteReport; } if (addExpense != null) { addExpense.Clicked += HandleAddExpense; } TapGestureRecognizer tap = new TapGestureRecognizer(); editNameImage.GestureRecognizers.Add(tap); tap.Tapped += ViewModel.ToggleEdit; expenseList.ItemSelected += HandleExpenseSelected; expenseList.SetBinding <ReportDetailViewModel>(ListView.ItemsSourceProperty, vm => vm.Report.Expenses); reportName.SetBinding <ReportDetailViewModel>(Entry.TextProperty, vm => vm.Report.ReportName); reportName.SetBinding <ReportDetailViewModel>(Entry.IsEnabledProperty, vm => vm.IsEditing); reportTotal.SetBinding <ReportDetailViewModel>(Label.TextProperty, vm => vm.Report.Total.ToString("C")); status.SetBinding <ReportDetailViewModel>(Label.TextProperty, vm => vm.ReportStatus); editNameImage.SetBinding <ReportDetailViewModel>(Image.SourceProperty, vm => vm.NameEditImageSource); #endregion }
public ReportPage(ReportDetailViewModel viewModel) { InitializeComponent(); BindingContext = this.viewModel = viewModel; }