Я создаю структуру пользовательского интерфейса для мобильного приложения, и у меня есть вопрос об управлении графикой пользовательского интерфейса.C# Лучший способ управления графикой пользовательского интерфейса
Сейчас я храню всю графику в виде встроенных ресурсов. Но часть GUI проекта разделена на 3 разных Project и NameSpaces, каждая из которых содержит графику в качестве встроенных ресурсов. Один из проектов является базовым и не знает о двух других, а два других проекта нуждаются в ресурсах из их NameSpace и сборки и из третьего (базового) пространства имен и сборки
Что я делаю, когда ресурс запрашивается через имя файла, я просматриваю каждый из списков объектов объекта GetManifestResourceNames из трех проектов, сортирует их, а затем ищет первую строку, содержащую имя файла. Я замечаю, что для каждой графики требуется 11-14 мс, чтобы получить эту строку! Когда все сказано и сделано, я смотрю на 60-100 мс только в поиске имени ресурса
Я знаю, что должен быть лучший способ динамически найти ресурс для проектов и пространств имен, используя только имя файла. Любая помощь с этим была бы превосходной!
Кроме того, наличие вложенных ресурсов не является ограничением. Если есть лучшее решение, которое не связано с ER, это было бы здорово!
Благодарим вас за ответ! Итак, как бы вы рекомендовали создать словарь? Ключ, являющийся именем изображения и сборкой, является значением? IDK, насколько большие объекты Assembly, если они маленькие (просто указатели на статические объекты), это было бы хорошо, но если они огромны, у меня есть только 32 МБ для работы, так как это .netCF ... –
Вы пытаетесь получить или кешировать объекты на основе имени файла? 'Словарь' сделал бы это: тогда просто загляните в словарь, и у вас будет свой объект в микросекундах :) –
Спасибо за ответ. Я спрашивал, должен ли я установить словарь как «Словарь <строка, сборка>», и если объект Assembly был просто указателем или был очень крупным объектом. Это потому, что я очень ограничен размером кучи. Вот почему я не кэширую фактические объекты Image. –