2009-06-17 6 views
1

J'essaie de parcourir la propriété Style d'un contrôle dans ASP.NET. C'est de type CssStyleCollection, qui a une page de référence sur MSDN.Itération sur CssStyleCollection

Il existe un exemple de code sur cette page pour parcourir la collection et obtenir les clés et les valeurs pour chaque élément de la collection. Il ressemble à ceci:

IEnumerator keys = MyText.Style.Keys.GetEnumerator(); 

while (keys.MoveNext()) 
{ 
    String key = (String)keys.Current; 
    dr = dt.NewRow(); 
    dr[0] = key; 
    dr[1] = MyText.Style[key]; 
    dt.Rows.Add(dr); 
} 

J'ai essayé d'utiliser la première ligne dans mon code, mais le compilateur ne cesse de dire que je dois spécifier un argument de type pour le type générique IEnumerator. Étant donné que j'essaie d'utiliser un exemple de code de Microsoft lui-même, je suis un peu confus!

Est-ce que quelqu'un est capable de m'aider à parcourir avec CssStyleCollection?

+1

J'ai essayé votre code et il compile en fait ici. IEnumerable prend en charge l'itération sur une collection non générique, il semble que cela ait quelque chose à voir avec la collection. MyText est un TextBox, un label? – maxbeaudoin

+0

Hmmm, je suppose que c'est peut-être que j'essaye de le faire comme une méthode d'extension de contrôle. Peut-être qu'il doit être dans un contexte de page pour travailler. – jonsidnell

Répondre

1

Essayez itérer comme ce qui suit:

foreach (string key in MyText.Style.Keys) 
    { 
     dr = dt.NewRow(); 
     dr[0] = key; 
     dr[1] = MyText.Style[key]; 
     dt.Rows.Add(dr); 
    } 
+0

C'était parfait, merci! – jonsidnell

Questions connexes