Connaissez-vous le type de commande que vous trouvez? Ni Control ni ListItem exposent une propriété CssClass, cependant, ListItem expose sa propriété Attributes.
mise à jour basée sur le commentaire et other question:
Vous devez utiliser System.Web.UI.HtmlControls.HtmlGenericControl
donc quelque chose comme cela devrait fonctionner pour vous:
HtmlGenericControl home =
this.Page.Master.FindControl("list").FindControl("home")
as HtmlGenericControl;
string cssToApply = "active_navigation";
if (null != home) {
home.Attributes.Add("class", cssToApply);
}
Si vous pensez qu'il ya peut-être déjà un classe attribuée à ce que vous devez ajouter à vous pourrait faire quelque chose comme:
if (null != home) {
if (home.Attributes.ContainsKey("class")) {
if (!home.Attributes["class"].Contains(cssToApply)){
// If there's already a class attribute, and it doesn't already
// contain the class we want to add:
home.Attributes["class"] += " " + cssToApply;
}
}
else {
// Just add the new class
home.Attributes.Add("class", cssToApply);
}
}
S'il ne s'agit pas d'éléments ListItems, placez-les dans le bon type et modifiez la collection d'attributs comme auparavant, sauf s'il existe une propriété CssClass pour ce type.
Vous semblez avoir plusieurs questions en cours d'exécution avec le même problème: http://stackoverflow.com/questions/1763211/apply-css-for-a-html-generic-control-like-ul-and-li-in -asp-net –