public MedidasSecundariasWindow(Utilitarios.Producto productoEntrante)
 {
     InitializeComponent();
     producto = productoEntrante;
     deshabilitarControles();
     dgcbcMedidas.ItemsSource = new Negocio.MedidasBL().selectMedidas();
     dgcbcMedidas.DisplayMemberPath = "Descripcion";
     dgcbcMedidas.SelectedValuePath = "Codigo";
     cargarDatos();
 }
        private void btnGuardar_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (flagEdition)
                {
                    Utilitarios.Producto med = new Utilitarios.Producto 
                    { 
                        Codigo = ((Utilitarios.Producto)dgProductos.SelectedItem).Codigo,
                        Descripcion = txtDescripcion.Text, 
                        Observacion = txtObservacion.Text,
                        StockMinimo = int.Parse(nudStockMinimo.Value.ToString()),
                        Precioreferencial = decimal.Parse(nudPrecioReferencial.Value.ToString()),
                        TipoProducto = (int)cbTipoProducto.SelectedValue,
                        CategoriaCodigo = (int)cbCategoria.SelectedValue,
                        MedidaCodigo = (int)cbUnidad.SelectedValue,
                        UbicacionFisica = txtUbicacionFisica.Text,
                        PresentacionCodigo = (int)cbPresentación.SelectedValue,
                       TipoExistenciaCodigo = (int)cbTipoExistencia.SelectedValue        
                    };
                    if (new Negocio.ProductosBL().updateProducto(med))
                    {
                        MessageBox.Show("Registro Actualizado con exito", "Actualizado", MessageBoxButton.OK, MessageBoxImage.Information);
                        flagEdition = false;
                        dgProductos.IsEnabled = true;
                        deshabilitarControles();
                        btnNuevo.IsEnabled = true;
                        btnEliminar.IsEnabled = true;
                        limpiarDatos();
                        cargarDatos();
                    }
                    else
                    {
                        MessageBox.Show("Ocurrio un error, vuelva a intentarlo", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                }
                else
                {
                    if (new Negocio.ProductosBL().insertProducto(new Utilitarios.Producto
                    {
                        Descripcion = txtDescripcion.Text,
                        Observacion = txtObservacion.Text,
                        StockMinimo = int.Parse(nudStockMinimo.Value.ToString()),
                        Precioreferencial = decimal.Parse(nudPrecioReferencial.Value.ToString()),
                        TipoProducto = (int)cbTipoProducto.SelectedValue,
                        CategoriaCodigo = (int)cbCategoria.SelectedValue,
                        MedidaCodigo = (int)cbUnidad.SelectedValue,
                        UbicacionFisica = txtUbicacionFisica.Text,
                        PresentacionCodigo = (int)cbPresentación.SelectedValue,
                        TipoExistenciaCodigo = (int)cbTipoExistencia.SelectedValue
                    }))
                    {
                        MessageBox.Show("Registro Guardado con exito", "Guardado", MessageBoxButton.OK, MessageBoxImage.Information);
                        flagEdition = false;
                        dgProductos.IsEnabled = true;
                        deshabilitarControles();
                        btnNuevo.IsEnabled = true;
                        btnEliminar.IsEnabled = true;
                        limpiarDatos();
                        cargarDatos();
                    }
                    else
                    {
                        MessageBox.Show("Ocurrio un error, vuelva a intentarlo", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                }

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Ocurrio un error");
            }
        }