Итак, у нас есть этот устаревший код, который отображает данные в древовидном формате. Они дополняют каждый узел дерева, используя изображения-проставки (... yup..ugh)
К сожалению, использование этих изображений контролируется внутренним UserControl, который мы вынуждены использовать (хотя, в основном, он происходит от Web.UI.WebControls.Image).
Что ж, получается, что у нас ОГРОМНОЕ дерево с тысячами узлов, каждый на четыре уровня глубиной или более. Это означает, что мы создаем около 10 000 изображений-заполнителей каждый раз, когда рисуем страницу, что занимает довольно много времени.
Мое решение сейчас состоит в том, чтобы статически предварительно выделить большое количество этих изображений и использовать их. Я надеюсь, что при одновременном доступе к странице сразу нескольких пользователей не возникнет никаких неприятностей.
Однако ... есть ли способ повторно использовать UserControl, чтобы мы могли создать просто ОДИН экземпляр экземпляра Image и каким-то образом добавить его несколько раз в коллекции Controls? Я попробовал это наивно, и это не сработало. Изображение рисуется только один раз, для первого элемента управления оно добавляется в первый раз (возможно, что-то связанное с материалом INamingConainer ...?)