Précédent   Forum du club des développeurs et IT Pro > Dotnet > Développement Web avec .NET > ASP.NET
ASP.NET ASP.NET -Forum d'entraide sur le Développement Web en ASP.NET. Avant de poster -> FAQ ASP.NET, Articles ASP.NET
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 08/02/2012, 12h19   #1
Torq le nain
Membre du Club
 
Avatar de Torq le nain
 
Homme
Responsable de service informatique
Inscription : mars 2007
Messages : 171
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Responsable de service informatique
Secteur : Finance

Informations forums :
Inscription : mars 2007
Messages : 171
Points : 67
Points : 67
Par défaut Contrôler dynamiquement la page Maître

Bonjour ici.

[Code Behind en C#]
Alors voilà, je cherche à contrôler dynamiquement des MenuItem de ma page Maître, depuis un évènement d'une page contenant. Genre un click sur un bouton.
donc, il faudrait, par exemple qu'un menu devienne actif et sélectionnable, ou bien en ajouter un. Sachant que les MenuItems n'ont pas d'ID, c'est un peu compliqué, Il n'y a que le Menu qui en a un.

Donc, je pense à
Code :
this.Parent.FindControl("NavigationMenu").Controls.Add(.......)
Mais là, je coince sur la syntaxe pour définir le nouveau MenuItem (et accessoirement pour l'ajouter à un emplacement précis du menu, genre avant le dernier MenuItem).
Ou bien récupérer un MenuItem déjà existant pour en changer les attributs.
Sachant qu'un MenuItem s'écrit comme ça
Code :
<asp:MenuItem NavigateUrl="~/Blablabla.aspx" Text="Blablabla" />
et qu'il n'y a pas d'attribut ID pour l'identifier.
Torq le nain est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2012, 18h13   #2
Torq le nain
Membre du Club
 
Avatar de Torq le nain
 
Homme
Responsable de service informatique
Inscription : mars 2007
Messages : 171
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Responsable de service informatique
Secteur : Finance

Informations forums :
Inscription : mars 2007
Messages : 171
Points : 67
Points : 67
Bon, l'ajout de MenuItem est résolu
Code :
(this.Master.FindControl("NavigationMenu") as Menu).Items.Add(new MenuItem("Blabla", "", "", "~/Blabla.aspx"));
Maintenant, c'est prendre le controle d'un menu qui pose soucis.
Pour un menu C non sélectionnable
Code :
(this.FindControl("NavigationMenu") as Menu).FindItem("Charger PDF").Selectable = false;
, l'évènement du click sur un bouton de la page content du menu B le rend sélectionnable
Code :
(this.Master.FindControl("NavigationMenu") as Menu).FindItem("Charger PDF").Selectable = true;
C'est ok, ça marche... Jusqu'à ce que je change de menu. Auquel cas je perd complètement la modification de l'attribut Selectable (ainsi que d'autres joyeusetés du même goût : affichage d'un label).
Là, je coince complètement.
Torq le nain est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2012, 11h32   #3
Torq le nain
Membre du Club
 
Avatar de Torq le nain
 
Homme
Responsable de service informatique
Inscription : mars 2007
Messages : 171
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : Responsable de service informatique
Secteur : Finance

Informations forums :
Inscription : mars 2007
Messages : 171
Points : 67
Points : 67
9 mois après, malgré l'absence de réponse, ce sujet est toujours, pour moi, d'une chaude actualité.

si un bon développeur spécialisé dans l'ASP.Net pouvait voir ça, merci.
Torq le nain est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2012, 23h47   #4
Immobilis
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 6 403
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 6 403
Points : 7 091
Points : 7 091
Salut,
Citation:
Envoyé par Torq le nain Voir le message
ça marche... Jusqu'à ce que je change de menu
Que veux-tu dire?

Pour le reste, en programmation objet, les objets ne "peuvent" (devraient) communiquer entre eux que de manière explicite. Si une TextBox se trouve dans une master page et un bouton dans la content page alors le bouton ne sait pas que la TextBox (ou le menu) existe. Il ne devrait pas essayer de le rechercher et de lui ajouter des éléments.

Comment faire? Tu peux lire ce tutoriel: http://lutecefalco.developpez.com/tu...-page-asp-net/

Porte toute ton attention sur la gestion des évènements. On en reparle dès que tu es prêt.

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2012, 12h53   #5
Dewey12
Nouveau Membre du Club
 
Homme Cédric
Développeur .NET
Inscription : septembre 2011
Messages : 56
Détails du profil
Informations personnelles :
Nom : Homme Cédric
Localisation : France, Aveyron (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur .NET

Informations forums :
Inscription : septembre 2011
Messages : 56
Points : 38
Points : 38
Bonjour,

Peut être cela servira a quelqu'un et pour compléter le post précédent...

Pour supprimer un onglet dans le cas ou l'utilisateur ne devrait pas avoir accès à une page :

Code :
(this.FindControl("NavigationMenu") as Menu).Items.Remove("ItemduMenu");
Dewey12 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 15h54.


 
 
 
 
Partenaires

Hébergement Web