Code en ligne dans l'élément de menu ASp.Net

2009-04-06 7 views
1

Est-ce que quelqu'un sait si c'est le moyen de définir les propriétés des attributs enfants du contrôle par code en ligne? Je veux dire quelque chose comme çaCode en ligne dans l'élément de menu ASp.Net

 <asp:MenuItem Text="text" NavigateUrl='<%# GetItemURL("val") %>' ></asp:MenuItem> 

CodeBehind 

     protected string GetItemURL(string tag) 
     { 
      if (string.IsNullOrEmpty(_pageUrl)) 
       _pageUrl = UrlManager.CastQueryString(Request.Url.ToString());    
      return string.Format("{0}?item={1}", _pageUrl, tag); 
     } 

approche Ni de travail, tout ce que vous utilisez <% #, <% =, Page.DataBind() etc, vous obtenez un obstacle.

Il serait très moche de définir de telles propriétés dans le code-behind. J'espère que la méthode permettant de définir de telles propriétés dans les blocs de rendu de code est disponible

merci d'avance.

Répondre

0

Votre syntaxe de liaison est correcte. Vous devez juste vous assurer que quelque chose lie le parent du contrôle <asp:MenuItem>. Vous pouvez même exécuter this.Page.Databind(); s'il n'y a pas déjà un bon contexte de liaison de données.

 Questions connexes

  • Aucun problème connexe^_^