Re[4]: Наследование WinForms и Виуальный дизайнер
От: e.slyusar  
Дата: 05.09.11 09:50
Оценка:
Здравствуйте, bizhan, Вы писали:

B>Здравствуйте, e.slyusar, Вы писали:


ES>>Здравствуйте, Osaka, Вы писали:


e>>>> internal abstract class BaseForm<T> : Form

e>>>> в дизайнере не
e>>>> получается (MS Visual Studio 2010) возникает ошибка:

ES>>т.е. получается что generics и Визуальный дизайнер не совместимы?


B>Совместимы, только через одно место. Надо сделать пустой класс, наследник от BaseForm<T>, с конкретным типом, а

B>от него уже наследовать свою форму. Это фейковый класс не будет открываться в дизайнере, что пофиг, а своя форма будет:

B>
B>// file1.cs
B>public class FakeForm : BaseForm<MyForm>
B>{
B>...
B>}

B>// file2.cs
B>public class MyForm : FakeForm
B>{
B>...
B>}
B>


B>Неудобно и некрасиво, но дочерние формы можно конструировать. А вот если планируется

B>в BaseForm класть общие контролы, то увы.


да я собственно так и сделал — только на мой взгляд не совсем это красиво, хак какой то получается.
Вот и спрашиваю у многоуважаемого сообщества — может быть кто то решал такую проблему?!
или же ее решать только архитектурно?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.