private void RenderCheckBoxes() { string ticketID = cbFlights.SelectedValue.ToString(); BUS_AmenityTicket bus_amenityTicket = new BUS_AmenityTicket(); previousAmenitiesCost = 0; for (int i = 0; i < lsAmenities.Count; i++) { string key = string.Format("{0} (${1})", lsAmenities[i].Service, lsAmenities[i].Price); amenityKeyValuePairs.Add(key, lsAmenities[i]); CheckBox chkBox = new CheckBox(); string chkBoxName = "chkb" + Regex.Replace(lsAmenities[i].Service, @"\s", ""); Point location = new Point((i / 4) * 230 + 20, (i % 4) * 20 + 40); chkBox = CreateCheckBox(chkBoxName, key, location, new EventHandler(DynamicCheckBox_Click)); //if this amenity is selected before, check its check box foreach (DTO_Amenity purchasedAmenity in lsPurchasedAmenitiesByTicketID) { if (purchasedAmenity.ID == lsAmenities[i].ID) { chkBox.Checked = true; break; } } // disable default amenities if (lsAmenities[i].Price == 0) { chkBox.Checked = true; chkBox.Enabled = false; } gbAmenities.Controls.Add(chkBox); } }
private void SaveAmenitiesTicket() { string ticketID = cbFlights.SelectedValue.ToString(); BUS_AmenityTicket bus_amenityTicket = new BUS_AmenityTicket(); DTO_AmenityTicket amenityTicket = new DTO_AmenityTicket(); amenityTicket.TicketID = ticketID; foreach (Control control in gbAmenities.Controls) { CheckBox chkBox = (CheckBox)control; amenityTicket.AmenityID = amenityKeyValuePairs[chkBox.Text].ID; if (chkBox.Checked && chkBox.Enabled) { bus_amenityTicket.InsertARow(amenityTicket); } else if (!chkBox.Checked) { bus_amenityTicket.DeleteArow(amenityTicket); } } }