Конференция ".Net" » визуальное наследование форм [C#, WinXP]
 
  • comrad (28.03.07 15:40) [0]
    научите как это делается в среде VS2005
  • comrad (28.03.07 16:44) [1]
    и если у меня скажем задумана иерархия форм из десяти наследников, то значит я должен иметь девять dll и десятого наследника в хостаппликейшен?
  • Александр Иванов © (28.03.07 17:28) [2]
    Если у тебя задумана иерархия из 10 форм, то с вероятностью, близкой к 1 тебя надо уволить :)
    В одной dll может содержаться сколько угодно форм, если в этом был вопрос.
  • camrad (28.03.07 19:10) [3]
    если в этом был вопрос.

    Вопрос был не в этом, камрад.
  • Александр Иванов © (28.03.07 19:56) [4]
    Тогда в чем?
    Наследование форм ничем от наследования классов не отличается.
  • comrad (28.03.07 20:09) [5]
    А в том вопрос, камрад, что если я хочу отнаследоваться в дизайне от формы, то я должен (согласно документации) поместить её в dll или exe. И если у меня задумана иерархия из N уровней, то должен ли я иметь при этом N-1 dll?
  • Александр Иванов © (29.03.07 08:28) [6]
    См [2]
  • comrad (29.03.07 10:05) [7]
    см [3]
  • Александр Иванов © (29.03.07 10:09) [8]
    ОК, отвечу точно.
    "И если у меня задумана иерархия из N уровней, то должен ли я иметь при этом N-1 dll?"
    Можешь, но не должен.
  • comrad (29.03.07 10:10) [9]
    Тогда зачем документация требует от меня, чтобы предок был в длл?
    Значит ли это, что вся иерархия не может быть в одной сборке?
  • Александр Иванов © (29.03.07 10:16) [10]
    Выбрось документацию и попробуй сделать в IDE. Время займет - 5 минут и все станет ясно.
  • clickmaker © (30.03.07 12:48) [11]

    > документация требует от меня, чтобы предок был в длл

    какая документация?
  • comrad (30.03.07 13:34) [12]
    MSVS2005->help->index + 'visual inheritance'
  • clickmaker © (30.03.07 13:58) [13]
    и где она там требует?
    там просто пример рассмотрен такой. Все формы вполне могут жить и в одном exe
  • Курдль © (02.04.07 20:30) [14]
    По состоянию на полгода назад (давно не брал я скрипку в руки) Мелкософт отменил наследование "сложных визуальных классов". Зачем он это сделал - заг'адка. Мы в свое время легко отделались, т.к. все системы, переводимые с 7-й на 8-ю VS использовали классы от Developer Express. Письмо, написанное в эту фирму, вернулось с ответом, что они и сами в недоумении, зачем MS сотворили такое зло. Им пришлось на всякий случай последовать примеру "головного разработчика". Но для тех, кто берет риск на свой страх, опубликовали маленькую прогу, которая имеет одну кнопку "Включить визуальное наследование всех классов Dev Exp". И с этим знанием мы зажили долго и счастливо.
  • Александр Иванов © (03.04.07 09:53) [15]
    > [14] Курдль ©   (02.04.07 20:30)

    Ссылку можно?
    Интересно как он их отменил, административными мерами? :) У меня VS 2005, SP2, который вышел меньше, чем полгода назад - все разрешено.
  • Курдль © (03.04.07 19:53) [16]

    > Александр Иванов ©   (03.04.07 09:53) [15]


    Что вот так по-простецки создал общую базовую форму с парочкой измененных членов, потом от нее отнаследовал базовую модальную форму с парочкой баттонов, от которой потом отнаследовал базовую модальную форму табличного выбора, на которую посадил датасэт и грид, а потом использовал унаследованные формы табличного выбора, на которых были готовые баттоны, грид и датасэт? Свезло... Мы на этом много копий (или копей?) поломали в свое время. Да и коллеги поуродовались (можно поднять архивы ixbt и GotDotNet за то время).

    Вот еще некоторая ссылочка о том же:
    https://www.devexpress.com/Support/Center/ViewKBIssue.aspx?kbid=A2912&searchtext=inheritance&pgid=ecb3be56-c75a-4166-aa68-cb462cd2dd2b

    We have found a way to enable visual inheritance in our controls when they are used in Visual Studio 2005. We have tested this solution in all the typical visual inheritance scenarios and haven't noticed any failures yet. But we cannot be completely sure that we have chosen the correct approach and thus we don't enable visual inheritance by default. What causes this doubt is that Microsoft disabled visual inheritance for its controls.

  • comrad (04.04.07 00:25) [17]
    И после этого мне говорят, что за этой ботвой - будущее.
  • homm © (04.04.07 09:34) [18]
    > И после этого мне говорят, что за этой ботвой - будущее.

    +!
  • clickmaker © (04.04.07 12:41) [19]
    у меня VS2005 SP1 - визуальное наследование работает
    Помню, был глюк с этим в VS2003 - там контролы исчезали загадочно с унаследованных форм. Вот это был гемор...
 
Конференция ".Net" » визуальное наследование форм [C#, WinXP]
Есть новые Нет новых   [118241   +23][b:0][p:0.001]