public void Agregar()
        {
            if (TxtCodProducto == null || TxtStockMax == null || TxtStockMin == null || TxtPrecioV == null)
            {
                System.Windows.MessageBox.Show("Debe completar todos los campos");
            }
            else
            {
                ProductoxTienda pxa;
                List<Producto> lstAux = null;
                lstAux = pxaSQL.BuscarProducto(TxtCodProducto,-1,-1,idTienda);

                if (lstAux != null)
                {

                    if ((pxa = LstProductos.Find(x => x.IdProducto == lstAux[0].IdProducto)) == null)
                    {

                        pxa = new ProductoxTienda();
                        pxa.CodProducto = lstAux[0].CodigoProd;
                        pxa.IdProducto = lstAux[0].IdProducto;
                        pxa.Nombre = lstAux[0].Nombre;
                        pxa.StockActual = String.IsNullOrEmpty(TxtStockIni) ? 0 : Int32.Parse(TxtStockIni);
                        pxa.StockMin = Int32.Parse(TxtStockMin);
                        pxa.StockMax = Int32.Parse(TxtStockMax);
                        pxa.PrecioVenta = float.Parse(txtPrecioV);
                        pxa.Vigente = (ChkVigente == true) ? 1 : 0;
                        LstProductos.Add(pxa);
                        LstProductos = new List<ProductoxTienda>(LstProductos);
                    }
                    else if (accion == 2)
                    {
                        pxa.Vigente = (ChkVigente == true) ? 1 : 0;
                        pxa.StockMin = Int32.Parse(TxtStockMin);
                        pxa.StockMax = Int32.Parse(TxtStockMax);
                        pxa.PrecioVenta = float.Parse(txtPrecioV);
                        pxa.StockActual = 0;
                        LstProductos = new List<ProductoxTienda>(LstProductos);
                        System.Windows.MessageBox.Show("El actualizaron los datos del producto correctamente");
                    }
                    else
                    {
                        System.Windows.MessageBox.Show("El producto que se quiere registrar ya existe en la tienda");
                    }

                }
                else
                {
                    if (accion == 2) {
                        pxa = new ProductoxTienda();
                        lstAux = pxaSQL.BuscarProducto(TxtCodProducto, -1, -1, -1);
                        pxa.CodProducto = lstAux[0].CodigoProd;
                        pxa.IdProducto = lstAux[0].IdProducto;
                        pxa.Nombre = lstAux[0].Nombre;
                        pxa.StockActual = 0;
                        pxa.StockMin = Int32.Parse(TxtStockMin);
                        pxa.StockMax = Int32.Parse(TxtStockMax);
                        pxa.PrecioVenta = float.Parse(txtPrecioV);
                        pxa.Vigente = (ChkVigente == true) ? 1 : 0;
                        pxa.IdTienda = this.idTienda;
                        LstProductos.Add(pxa);
                        LstProductos = new List<ProductoxTienda>(LstProductos);

                        System.Windows.MessageBox.Show("El actualizaron los datos del producto correctamente");
                    }
                    else
                        System.Windows.MessageBox.Show("El código proporcionado no existe");
                }
            }
        }
        public void Importar()
        {
            System.Data.DataTableReader dt = MadeInHouse.Dictionary.ExcelUtiles.Importar("Productos");
            if (dt != null)
            {
                List<Producto> lstAux = null;
                lstAux = pxaSQL.BuscarProducto();
                bool exito = true;
                LstProdAgregados.Clear();

                while (dt.Read())
                {

                    ProductoxTienda pxa = new ProductoxTienda();
                    Producto pAux = (lstAux.Find(x => x.CodigoProd == dt["Codigo"].ToString()));
                    if (pAux == null)
                    {
                        System.Windows.MessageBox.Show("ERROR: No se pudo terminar la carga porque el producto " + dt["Codigo"].ToString() + " no ha sido registrado en la empresa");
                        exito = false;
                        break;
                    }
                    else if ((LstProductos.Find(x => x.IdProducto == pAux.IdProducto)) == null && (LstProdAgregados.Find(x => x.IdProducto == pAux.IdProducto)) == null)
                    {

                        pxa.CodProducto = pAux.CodigoProd;
                        pxa.Nombre = pAux.Nombre;
                        pxa.IdProducto = pAux.IdProducto;
                        pxa.IdAlmacen = idAlmacen;
                        pxa.StockActual = Convert.ToInt32(dt["StockActual"]);
                        pxa.StockMin = Convert.ToInt32(dt["StockMin"]);
                        pxa.StockMax = Convert.ToInt32(dt["StockMax"]);
                        pxa.PrecioVenta = float.Parse(dt["PrecioVenta"].ToString());
                        pxa.Vigente = int.Parse(dt["Vigente"].ToString());
                        LstProdAgregados.Add(pxa);
                    }
                    else
                    {
                        LstProdAgregados.Clear();
                        System.Windows.MessageBox.Show("ERROR: No se pudo terminar la carga porque el producto " + dt["Codigo"].ToString() + " ya se registro para la empresa o se repite en su lista");
                        exito = false;
                        break;
                    }
                }
                dt.Close();

                if (exito)
                {
                    for (int i = 0; i < LstProdAgregados.Count; i++)
                    {
                        LstProductos.Add(LstProdAgregados[i]);
                    }
                    LstProductos = new List<ProductoxTienda>(LstProductos);
                }

            }
        }