Hola;
Me explico y haber si me podéis ayudar.
Tengo una aplicación web (vb.net) y un Site.Master en la que tengo este contenido:
Código HTML:
Ver original<%@ Master Language="VB" AutoEventWireup="false" CodeBehind="Site.master.vb" Inherits="HojaDeGastos.Site" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head id="Head1" runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <link href="~/Styles/Site.css" rel="stylesheet" type="text/css" /> <asp:ContentPlaceHolder ID="HeadContent" runat="server">
</asp:ContentPlaceHolder>
<form id="Form1" runat="server"> LIQUIDACIÓN DE GASTOS Y VISAS
<div class="clear hideSkiplink"> <asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal">
<Items>
<asp:MenuItem NavigateUrl="~/PaginaPrincipal.aspx" Text="PÁGINA PRINCIPAL"/>
<asp:MenuItem NavigateUrl="~/Gastos/HojaLiquidacionGastos.aspx" Text="LIQUIDACIÓN DE GASTOS"/>
<asp:MenuItem NavigateUrl="~/Gastos/Visas.aspx" Text="VISAS"/>
<asp:MenuItem NavigateUrl="~/Validar-Rechazar/Identificador.aspx" Text="VALIDAR / RECHAZAR"/>
</Items>
</asp:Menu>
<asp:ContentPlaceHolder ID="MainContent" runat="server"/>
Todas las aspx que voy creando cargan esta pagina (Site.Master) de esta forma:
Código vb:
Ver original<%@ Page Title="Iniciar sesión" Language="vb" MasterPageFile="~/Site.Master" AutoEventWireup="false"
CodeBehind="Login.aspx.vb" Inherits="HojaDeGastos.Login" %>
La pagina principal de mi aplicación web es Login.aspx en la cual le indicas a la hora de hacer el login el grupo al que perteneces.
Lo que quiero es que primeramente, cuando accedo a la pantalla de login dentro del
<asp:Menu></asp:Menu> del Site.Master, no se me muestre ningún item del menú y una vez haga login e indique el grupo al que pertenezco, pasarle esa variable de grupo al site.master y que muestre menús diferentes.
Se que el código que escribiré ahora esta mal pero es mas o menos para que entendáis lo que quiero:
Código HTML:
Ver original<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal">
<%If grupoUsuario = 1 Then%>
<Items>
<asp:MenuItem NavigateUrl="~/PaginaPrincipal.aspx" Text="PÁGINA PRINCIPAL"/>
<asp:MenuItem NavigateUrl="~/Gastos/HojaLiquidacionGastos.aspx" Text="LIQUIDACIÓN DE GASTOS"/>
<asp:MenuItem NavigateUrl="~/Gastos/Visas.aspx" Text="VISAS"/>
<asp:MenuItem NavigateUrl="~/Validar-Rechazar/Identificador.aspx" Text="VALIDAR / RECHAZAR"/>
</Items>
<%ElseIf grupoUsuario = 2 Then%>
<Items>
<asp:MenuItem NavigateUrl="~/PaginaPrincipal.aspx" Text="PÁGINA PRINCIPAL"/>
<asp:MenuItem NavigateUrl="~/Gastos/Visas.aspx" Text="VISAS"/>
</Items>
<%ElseIf grupoUsuario = 0 Then%>
<Items>
<asp:MenuItem NavigateUrl="~/PaginaPrincipal.aspx" Text="PÁGINA PRINCIPAL"/>
<asp:MenuItem NavigateUrl="~/Gastos/HojaLiquidacionGastos.aspx" Text="LIQUIDACIÓN DE GASTOS"/>
</Items>
<%End If%>
</asp:Menu>
¿Como puedo hacerlo?