public List <eMenuUsuario> Menu_GetList(int IdPerfil)
        {
            SqlCommand cmd = new SqlCommand("pADM_MenuUsuario_list");

            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.Add("@IdPerfil", SqlDbType.Int).Value = IdPerfil;

            SqlDataReader       reader   = ExecuteReader(cmd);
            List <eMenuUsuario> lUsuario = new List <eMenuUsuario>();

            while (reader.Read())
            {
                eMenuUsuario oMenu = new eMenuUsuario();

                oMenu.IdMenu            = reader.GetByte(0);
                oMenu.IdSMenu           = reader.GetInt16(1);
                oMenu.IdModulo          = reader.GetInt32(2);
                oMenu.DescripcionMenu   = reader.GetString(3);
                oMenu.DescripcionSMenu  = reader.GetString(4);
                oMenu.DescripcionModulo = reader.GetString(5);
                if (!reader[6].Equals(DBNull.Value))
                {
                    oMenu.URLPagina = reader.GetString(6);
                }
                oMenu.URLPagina = oMenu.URLPagina + (oMenu.URLPagina.Contains("?") ? "&" : "?") + "IdModulo=" + oMenu.IdModulo.ToString();

                lUsuario.Add(oMenu);
            }
            reader.Close();

            return(lUsuario);
        }
        private void repSubMenuHome_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            eMenuUsuario oSubMenuHome  = (eMenuUsuario)e.Item.DataItem;
            Repeater     repModuloHome = (Repeater)e.Item.FindControl("repModuloHome");

            if (repModuloHome != null)
            {
                List <eMenuUsuario> iNewMenu = new List <eMenuUsuario>();
                int lastID = 0;

                for (int i = 0; i < iMenu.Count; i++)
                {
                    eMenuUsuario oMenu = (eMenuUsuario)iMenu[i];
                    if (oMenu.IdSMenu == oSubMenuHome.IdSMenu && lastID != oMenu.IdModulo)
                    {
                        iNewMenu.Add(oMenu);
                    }
                    if (oMenu.IdSMenu == oSubMenuHome.IdSMenu && oMenu.DescripcionModulo == "Productos")
                    {
                        iNewMenu.Add(oMenu);
                    }
                    lastID = oMenu.IdSMenu;
                }

                repModuloHome.DataSource = iNewMenu;
                repModuloHome.DataBind();
            }
        }
        protected void repMenuHome_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            eMenuUsuario oMenuHome      = (eMenuUsuario)e.Item.DataItem;
            Repeater     repSubMenuHome = (Repeater)e.Item.FindControl("repSubMenuHome");

            if (repSubMenuHome != null)
            {
                List <eMenuUsuario> iNewMenu = new List <eMenuUsuario>();
                int lastID = 0;

                for (int i = 0; i < iMenu.Count; i++)
                {
                    eMenuUsuario oMenu = (eMenuUsuario)iMenu[i];
                    if (oMenu.IdMenu == oMenuHome.IdMenu && lastID != oMenu.IdSMenu)
                    {
                        iNewMenu.Add(oMenu);
                    }
                    lastID = oMenu.IdSMenu;
                }

                repSubMenuHome.ItemDataBound += new System.Web.UI.WebControls.RepeaterItemEventHandler(repSubMenuHome_ItemDataBound);
                repSubMenuHome.DataSource     = iNewMenu;
                repSubMenuHome.DataBind();
            }
        }
        protected void repModuloLeft_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            HyperLink lnkUrlPagina = (HyperLink)e.Item.FindControl("lnkUrlPagina");

            if (lnkUrlPagina != null)
            {
                eMenuUsuario oModulo = (eMenuUsuario)e.Item.DataItem;
                lnkUrlPagina.NavigateUrl = "../" + oModulo.URLPagina;
                lnkUrlPagina.Text        = oModulo.DescripcionModulo;
                if (oModulo.IdModulo == IdModulo)
                {
                    lnkUrlPagina.CssClass = "selected";
                }
            }
        }
        private void BindMenuHome()
        {
            List <eMenuUsuario> iNewMenu = new List <eMenuUsuario>();
            int lastID = 0;

            for (int i = 0; i < iMenu.Count; i++)
            {
                eMenuUsuario oMenu = (eMenuUsuario)iMenu[i];
                if (lastID != oMenu.IdMenu)
                {
                    iNewMenu.Add(oMenu);
                }
                lastID = oMenu.IdMenu;
            }

            repMenuHome.DataSource = iNewMenu;
            repMenuHome.DataBind();
        }
        protected void repMenuLeft_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            HyperLink lnkUrlPagina  = (HyperLink)e.Item.FindControl("lnkUrlPagina");
            Repeater  repModuloLeft = (Repeater)e.Item.FindControl("repModuloLeft");

            if (lnkUrlPagina != null && repModuloLeft != null)
            {
                eMenuUsuario oModulo = (eMenuUsuario)e.Item.DataItem;
                lnkUrlPagina.NavigateUrl = "../" + oModulo.URLPagina;
                lnkUrlPagina.Text        = oModulo.DescripcionSMenu;

                if (oModulo.IdSMenu == IdSMenu)
                {
                    lnkUrlPagina.CssClass = "selected";

                    repModuloLeft.ItemDataBound += new RepeaterItemEventHandler(this.repModuloLeft_ItemDataBound);
                    repModuloLeft.DataSource     = lModulo;
                    repModuloLeft.DataBind();
                }
            }
        }