Re: Deriving from custom forms in C++, is it possible?

From: Vincent Finn (1_at_2.com)
Date: 08/17/04


Date: Tue, 17 Aug 2004 12:07:11 +0100

On Mon, 16 Aug 2004 17:09:01 -0700, Fireangel
<Fireangel@discussions.microsoft.com> wrote:

>
>For a real answer, we kinda need more info. IE, what do you mean by "Not
>being able to edit the inherited form"?? What are you trying to edit??

I mean that when I try to open the form in the Design window (by
double-clicking on the .h file) I get the following error

--------------
 The designer could not be shown for this file because none of the
classes within it can be designed. The designer inspected the
following classes in the file:

        B --- The base class 'Config.A' could not be loaded. Ensure
the assembly has been referenced or built if it is part of the
project.
--------------

>Are you trying to edit the stuff (controls, menu bar, menu's) set up on the
>first form?? almost everything in form A would be private, and so you
>couldn't edit it in form b. Change them all to protected (Faster if you do
>this by hand).

Don't get that far although that would have been a question later
since I noticed in C# that you don't get access to the events for
buttons that are on the base form in the derived form.
making them 'protected virtual' gives access although it is a bit
messy that you can't get to the handler by double-clicking, I assume
that'll be the same in C++

>Next thing to check is namespaces. In order for form B to have any chance
>of comming up in the form designer, it can only be wrapped inside of 1
>namespace. IE namespace1::FormB is valid, Namespace1::SubNamespace1::FormB
>will crash on you.

They are both in the Config namespace (that is the project name)
I tried using the 'Config::B' and simply 'B' but made no difference

Any other suggestions?

        Vin