2010-03-03 6 views
0

Je travaille sur une application où j'ai des boutons de liaison dans la page maître.
Je veux les afficher en fonction de l'autorisation qui leur est donnée une fois qu'ils se sont connectés. Au début, je les ai tous mis en évidence faux, puis je vérifie l'autorisation dans la classe aspx.cs de la page maître. Je rends le bouton de lien visible en fonction du droit accordé à l'utilisateur. Mais il rend tous les boutons de lien visibles. Au lieu de cela, il ne devrait en rendre que deux visibles et le repos devrait être caché. Voici mon code de MasterPage.aspx.cs:masquer les boutons dans la page maître

ArrayList arrlstUserRoles = new ArrayList(); 
       arrlstUserRoles = (ArrayList)Session["Roles"]; 
       for (int j = 0; j < arrlstUserRoles.Count; j++) 
       { 
        if (int.Parse(arrlstUserRoles[j].ToString()) == 1) 
        { 
         lbtnRetailer.Visible = true; 
        } 
        else if (int.Parse(arrlstUserRoles[j].ToString()) == 2) 
        { 
         lbtnCategory.Visible = true; 
        } 
        else if (int.Parse(arrlstUserRoles[j].ToString()) == 3) 
        { 
         lbtnCouponTemplate.Visible = true; 
        } 
        else if (int.Parse(arrlstUserRoles[j].ToString()) == 4) 
        { 
         //lbtnStoreManagement.Visible = true; 
        } 
        else if (int.Parse(arrlstUserRoles[j].ToString()) == 5) 
        { 
         lbtnStoreManagement.Visible = true; 
        } 
        else if (int.Parse(arrlstUserRoles[j].ToString()) == 6) 
        { 
         lbtnContentManagement.Visible = true; 
        } 
        else if (int.Parse(arrlstUserRoles[j].ToString()) == 7) 
        { 
         //lbtnStoreManagement.Visible = true; 
        } 
       } 
+0

Et votre question est ??? – Oded

+0

Lorsque vous déboguez, évalue-t-il chaque instruction if comme vraie? – adrianos

Répondre

0

Vous devez définir la visibilité des linkbuttons que vous voulez cacher false.

Avant de commencer looping, régler tous les linkbuttons de ne pas être visible:

arrlstUserRoles = (ArrayList)Session["Roles"]; 

lbtnRetailer.Visible = false; 
lbtnCategory.Visible = false; 

... 

for (int j = 0; j < arrlstUserRoles.Count; j++) 
{ 
    if (int.Parse(arrlstUserRoles[j].ToString()) == 1) 
    { 
    lbtnRetailer.Visible = true; 
    } 
    ... 

    } 
+0

c'était une erreur très stupide que j'ai faite, merci d'avoir signalé mon erreur – pankaj

Questions connexes