private bool BuscarProducto() { string codProd = txtCodProd.Text.Trim(); //Si está vació el txt -> abre el form if (codProd == "") { return(false); } //De lo contrario hace la búsqueda del producto var list = new ProductoBL().BuscarProducto(codProd, "", "", Estado.Activo, 99, Estado.Activo); //Si solo hay un producto con ese filtro if (list != null && list.Count() == 1) { foreach (var i in list) { //Si el prouducto encontrado es distinto al prouducto ya cargado -> carga prod y no abre form if (prod == null || i.id_producto != prod.id_producto) { CleanProducto(); SetProducto(i); return(true); } } //Si el producto encontrado es el mismo que el que ya estaba cargado -> abre from return(false); } //si no hay ningún producto con esa característica o hay más de uno -> abre form else { return(false); } }