private void BindGrid()
        {
            DataSet ds = new DataSet();

            SisPackController.AdministrarGrillas.Configurar(this.hgCodigoBarras, "UnidadVentaID", this.CantidadOpciones);

            int tipoReporte;

            if (this.rbtPrevendido.Checked)
            {
                tipoReporte = (int)NegociosSisPackInterface.SisPack.TipoReporteCodigoBarras.Prevendido;
            }
            else if (this.rbtAsignado.Checked)
            {
                tipoReporte = (int)NegociosSisPackInterface.SisPack.TipoReporteCodigoBarras.Asingado;
            }
            else
            {
                tipoReporte = (int)NegociosSisPackInterface.SisPack.TipoReporteCodigoBarras.Disponible;
            }

            ICodigoBarras           codigoBarras = CodigoBarrasFactory.GetCodigoBarras();
            DsDisponibilidadCodigos dsCodigos    = codigoBarras.GetDisponibilidadCodigoBarrasDataSet(
                this.txtDesde.Text, //Utiles.Validaciones.obtieneEntero(this.txtDesde.Text),
                this.txtHasta.Text, //Utiles.Validaciones.obtieneEntero(this.txtHasta.Text),
                this.txtFechaDesde.Text != "" ? Utiles.Fechas.FormatFechaDDMMYYYY(this.txtFechaDesde.Text) : Utiles.Fechas.FormatFechaDDMMYYYY("01/01/1900"),
                this.txtFechaHasta.Text != "" ? Utiles.Fechas.FormatFechaDDMMYYYY(this.txtFechaHasta.Text) : Utiles.Fechas.FormatFechaDDMMYYYY("01/01/1900"),
                tipoReporte
                );

            ds.Tables.Add(dsCodigos.Datos.Clone());
            ds.Tables[0].TableName = "Codigos";

            foreach (System.Data.DataRow row in dsCodigos.Datos.Rows)
            {
                ds.Tables["Codigos"].ImportRow(row);
            }

            DsDisponibilidadCodigos dsDetalleCodigos = codigoBarras.GetDisponibilidadCodigoDetalleDataSet(
                this.txtDesde.Text, //Utiles.Validaciones.obtieneEntero(this.txtDesde.Text),
                this.txtHasta.Text, //Utiles.Validaciones.obtieneEntero(this.txtHasta.Text),
                this.txtFechaDesde.Text != "" ? Utiles.Fechas.FormatFechaDDMMYYYY(this.txtFechaDesde.Text) : Utiles.Fechas.FormatFechaDDMMYYYY("01/01/1900"),
                this.txtFechaHasta.Text != "" ? Utiles.Fechas.FormatFechaDDMMYYYY(this.txtFechaHasta.Text) : Utiles.Fechas.FormatFechaDDMMYYYY("01/01/1900"),
                tipoReporte
                );


            ds.Tables.Add(dsDetalleCodigos.Datos.Clone());
            ds.Tables[1].TableName = "Detalle";

            foreach (System.Data.DataRow row in dsDetalleCodigos.Datos.Rows)
            {
                ds.Tables["Detalle"].ImportRow(row);
            }

            DataColumn dc1 = ds.Tables[0].Columns["Descripcion"];

            DataColumn dc2 = ds.Tables[1].Columns["Descripcion"];

            DataRelation dr = new DataRelation("UnidadVentaID_Detalle", dc1, dc2, false);

            ds.Relations.Add(dr);

            Session["oculEntidad"] = new int();
            int ocultar = 0;

            if (rbtDisponibles.Checked)
            {
                this.hgCodigoBarras.Columns[2].Visible = false;
                ocultar = 1;
                Session["oculEntidad"] = ocultar;
            }
            else
            {
                Session["oculEntidad"] = ocultar;
            }

            this.hgCodigoBarras.DataSource = ds;
            this.hgCodigoBarras.DataMember = "Codigos";
            this.hgCodigoBarras.DataBind();
        }