public void Guardar()
        {
            try
            {

            if (ClsVerificarCaja.CajaEstado())
            {
                if (ClsVerificarCaja.SaldoEnCaja() >= Convert.ToDecimal(txtTotalCompra.EditValue))
                    {
                        if ((int)txtCveCompra.EditValue == 0)
                        {
                            Compra entity = new Compra
                            {
                                CveUsuario = Convert.ToInt32(new clsModificarConfiguracion().configGetValue("IDUsuarioApp")),
                                TotalCompra = Convert.ToDecimal(txtTotalCompra.EditValue),
                                FechaCompra = DateTime.Today.Date,
                                Estado = true
                            };
                            txtCveCompra.EditValue = new LogicaCompras().AgregarCompra(entity);
                            foreach (DataRow fila in _dtArticulos.Rows)
                            {
                                DetallesCompra detcomp = new DetallesCompra
                                    {
                                        CveCompra = entity.CveCompra,
                                        PesoCantidad = Convert.ToDecimal(fila[1]),
                                        TipodeCompra = fila[0].ToString(),
                                        PrecioCompra = Convert.ToDecimal(fila[2]),
                                        TotalPrecioArticulo = Convert.ToDecimal(fila[3]),
                                    };
                                new LogicaCompras().AgregarDetalle(detcomp);
                            }
                            ImprimirNotaCompra();
                        }
                        else
                        {
                            XtraMessageBox.Show("Ya se ha Guardado la compra solo se puede Imprimir el Ticket ", "Datos Guardados");
                            ImprimirNotaCompra();
                        }
                        //Nuevo();
                    }
                    else
                    {
                        XtraMessageBox.Show("No puede Comprar mas de lo disponible en la CAJA Actual");
                    }
            }
            else
            {
                XtraMessageBox.Show("La Caja del Dia de hoy ya se ha cerrado\n SISTEMA BLOQUEADO", "Caja Cerrada", MessageBoxButtons.OK, MessageBoxIcon.Error);
                Application.Exit();
            }
            }
            catch (Exception ex)
            {

                XtraMessageBox.Show(ex.Message,"Error al Guardar la compra");
            }
        }
 partial void DeleteDetallesCompra(DetallesCompra instance);
 partial void UpdateDetallesCompra(DetallesCompra instance);
 partial void InsertDetallesCompra(DetallesCompra instance);
		private void detach_DetallesCompras(DetallesCompra entity)
		{
			this.SendPropertyChanging();
			entity.Compra = null;
		}
 public void AgregarDetalle(DetallesCompra detalle)
 {
     _entidades.DetallesCompras.InsertOnSubmit(detalle);
     _entidades.SubmitChanges();
 }