private void btnCabina_Click(object sender, EventArgs e) { if (groupBox1.Controls.OfType <ComboBox>().Any(t => string.IsNullOrEmpty(t.Text)) || groupBox1.Controls.OfType <TextBox>().Any(t => string.IsNullOrEmpty(t.Text))) { MessageBox.Show("Se deben completar todos los campos"); } else { ConjuntoCabinas cabinas = new ConjuntoCabinas(); cabinas.tipo = comboBoxTipoCabina.Text; cabinas.cantidad = Convert.ToInt32(txtCantidadCabinas.Text); cabinas.piso = Convert.ToInt32(txtPisoCabina.Text); cabinas.recargo = Convert.ToDecimal(txtRecargoCabina.Text); conjuntoCabinas.Add(cabinas); DataRow row = tablaCabinas.NewRow(); row[0] = cabinas.tipo; row[1] = cabinas.cantidad; row[2] = cabinas.piso; row[3] = cabinas.recargo; tablaCabinas.Rows.Add(row); dataGridViewCabinas.DataSource = null; dataGridViewCabinas.DataSource = tablaCabinas; generarCabinasIndividuales(cabinas); } }
private void generarCabinasIndividuales(ConjuntoCabinas cabinas) { int i; if (cabinasIndividuales.Any(cabina => cabina.piso == cabinas.piso)) { i = cabinasIndividuales.FindAll(cabina => cabina.piso == cabinas.piso).Max(cabina => cabina.numero) + 1; } else { i = 0; } for (int j = 0; j < cabinas.cantidad; j++) { Cabina nuevaCabina = new Cabina(); nuevaCabina.tipo = cabinas.tipo; nuevaCabina.numero = i; nuevaCabina.piso = cabinas.piso; nuevaCabina.recargo = cabinas.recargo; cabinasIndividuales.Add(nuevaCabina); i++; } }