public static ListaElectrodomesticos operator +(ListaElectrodomesticos lista, DataRow fila) { switch (fila["Tipo"].ToString()) { case "Tv": lista.lista.Add(new Tv(Electrodomestico.StringAMarca(fila["Marca"].ToString()), Electrodomestico.StringAModelo(fila["Modelo"].ToString()), float.Parse(fila["Precio"].ToString()))); break; case "Cafetera": lista.lista.Add(new Cafetera(Electrodomestico.StringAMarca(fila["Marca"].ToString()), Electrodomestico.StringAModelo(fila["Modelo"].ToString()), float.Parse(fila["Precio"].ToString()))); break; } return(lista); }
/// <summary> /// Confirma la creacion / modificacion de un electrodomestico /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnAceptar_Click(object sender, EventArgs e) { try { try { switch (this.cmbTipo.Text) { case "Tv": this.elec = new Tv(Electrodomestico.StringAMarca(cmbMarca.Text), Electrodomestico.StringAModelo(cmbModelo.Text), float.Parse(txtPrecio.Text)); break; case "Cafetera": this.elec = new Cafetera(Electrodomestico.StringAMarca(cmbMarca.Text), Electrodomestico.StringAModelo(cmbModelo.Text), float.Parse(txtPrecio.Text)); break; default: throw new ProductoInvalidoException(); } this.DialogResult = DialogResult.OK; } catch (FormatException ex) { throw new PrecioInvalidoException(); } } catch (ProductoInvalidoException ex) { MessageBox.Show(ex.Message); } catch (Exception ex) { MessageBox.Show(ex.Message); } }