Re: Загрузка ресурсов
От: jorj  
Дата: 15.06.06 14:41
Оценка:
Здравствуйте, welaribo, Вы писали:

W>Они сохраняются в массиве. Затем из проекта нуна работать с той или другой формой. Вот как все это организовать. Загрузить – загружаю как массив Form, но тогда недоступны свойства и методы самой реализации Form1, Form2 и так далее.


Как я понял у тебя есть массив
Form[] formArray = new Form[] { new Form1(), new Form2(), new Form3(), ... }

теперь в вызывающем коде тебе необходимо получить конкретный экземпляр. Это верно?

Если так то возможны два варианта, в принципе похожих:
1. В вызывающем коде мы знаем на каком месте какая форма расположена, тогда решение:
Form2 form2 = (Form2) formArray[ 1 ]; // либо formArray[ 1 ] as Form2;


2. В вызывающем коде мы знаем только нужный класс формы, другое решение:
мы делаем что-то типа factory:
// где-то рядом с массивом
public static Form GetFormByType( Type formType )
{
    ...
    // логика по поиску индекса формы заданного типа
    ...
    return formArray[foundIndex];
}
...
// вызывающий код

Form2 form2 = (Form2) GetFormByType(typeof( Form2 ));


Ну вроде бы как-то так, если я правильно понял исходную задачу.
---
Enjoy In Silence
Sent via RSDN@Home 1.1.4 stable SR1 rev. 568
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.