public void ShowCars(MeansTransportCategories meansTransportCategories, Staff staff, BaseEntryForm EntryForm) { if (staff == null || meansTransportCategories == MeansTransportCategories.Public) { EntryForm.Fields[nameof(MissionOrder.Car)].Hide(); } else if (staff != null && meansTransportCategories == MeansTransportCategories.Public) { EntryForm.Fields[nameof(MissionOrder.Car)].Hide(); } else if (staff == null && meansTransportCategories == MeansTransportCategories.Voiture_de_Service) { EntryForm.Fields[nameof(MissionOrder.Car)].Show(); ManyToOneField CarField = EntryForm.Fields[nameof(MissionOrder.Car)] as ManyToOneField; List <Car> ls = new ModelContext().Cars.Where(r => r.PersonelCar == false).ToList <Car>(); CarField.DataSource = ls; if (ls.Count < 1) { CarField.TextCombobox = ""; } } else if (staff != null && meansTransportCategories == MeansTransportCategories.Voiture_de_Service) { EntryForm.Fields[nameof(MissionOrder.Car)].Show(); ManyToOneField CarField = EntryForm.Fields[nameof(MissionOrder.Car)] as ManyToOneField; List <Car> ls = new ModelContext().Cars.Where(r => r.PersonelCar == false).ToList <Car>(); CarField.DataSource = ls; if (ls.Count < 1) { CarField.TextCombobox = ""; } } else if (staff == null && meansTransportCategories == MeansTransportCategories.Voiture_Personnel) { EntryForm.Fields[nameof(MissionOrder.Car)].Show(); } else if (staff != null && meansTransportCategories == MeansTransportCategories.Voiture_Personnel) { ManyToOneField CarField = EntryForm.Fields[nameof(MissionOrder.Car)] as ManyToOneField; List <Car> ls = new ModelContext().Cars.Where(r => r.Staff.Id == staff.Id).ToList <Car>(); CarField.DataSource = ls; EntryForm.Fields[nameof(MissionOrder.Car)].Show(); if (ls.Count < 1) { CarField.TextCombobox = ""; } } }
public void ValueChanged(BaseEntryForm EntryForm, object sender) { BaseField field = sender as BaseField; switch (field.Name) { case nameof(MissionOrder.MissionConvocation): { ManyToOneField missionField = field as ManyToOneField; MissionConvocation MissionConvocation = missionField.SelectedItem as MissionConvocation; if (MissionConvocation != null) { EntryForm.Fields[nameof(MissionOrder.Staff)].Show(); ManyToOneField StaffField = EntryForm.Fields[nameof(MissionOrder.Staff)] as ManyToOneField; List <Staff> ls = MissionConvocation.Staffs; // ls.Insert(0, new Staff()); throw Datetime2 exception StaffField.DataSource = ls; } } break; case nameof(MissionOrder.MeansTransportCategory): { ComboBoxField missioncarfieled = field as ComboBoxField; meanscatG = (MeansTransportCategories)missioncarfieled.Value; this.ShowCars(meanscatG, staffG, EntryForm); } break; case nameof(MissionOrder.Validation): { BooleanField missionValiditionfield = field as BooleanField; bool validation = (bool)missionValiditionfield.Value; if (validation) { EntryForm.Fields[nameof(MissionOrder.ValidationDate)].Show(); BooleanField validitionfield = EntryForm.Fields[nameof(MissionOrder.ValidationDate)] as BooleanField; } else { EntryForm.Fields[nameof(MissionOrder.ValidationDate)].Hide(); BooleanField validitionfield = EntryForm.Fields[nameof(MissionOrder.ValidationDate)] as BooleanField; } } break; case nameof(MissionOrder.Staff): { ManyToOneField missionStaffield = field as ManyToOneField; staffG = missionStaffield.SelectedItem as Staff; this.ShowCars(meanscatG, staffG, EntryForm); } break; } }