Nous avons donc ce code hérité qui affiche les données dans un format arborescent. Ils tamponnent chaque noeud de l'arbre à l'aide d'images d'espacement (... yup..ugh)Réutilisation de UserControls coûteux
Malheureusement, l'utilisation de ces images est contrôlée par un UserControl interne que nous sommes obligés d'utiliser (essentiellement dérive de Web.UI.WebControls.Image, cependant). Eh bien, il se trouve que nous avons un arbre énorme avec des milliers de nœuds, chacun à quatre niveaux de profondeur ou plus. Cela signifie que nous créons environ 10 000 images de remplissage à chaque fois que nous dessinons la page, ce qui prend beaucoup de temps.
Ma solution est actuellement de pré-allouer statiquement un grand nombre de ces images et les utiliser. J'espère qu'il n'y aura aucune méchanceté qui apparaîtra lorsque plusieurs utilisateurs accèdent à la page en même temps.
Toutefois ... existe-t-il un moyen de réutiliser un UserControl de sorte que nous puissions créer une seule instance de l'image et l'ajouter en plusieurs fois aux collections Controls? J'ai essayé naïvement et ça n'a pas marché. L'image ne se dessine qu'une seule fois, pour le premier contrôle ajouté à la première fois (probablement quelque chose à faire avec INamingConainer ...?)
sont les images de paddding créées à la volée par ce contrôle, ou faire ils pointent simplement vers une image statique hébergée quelque part? –
Le contrôle est-il littéralement juste une image? Ou at-il des propriétés spéciales/CSS? – GenericTypeTea