Problems with Wizard v3 and VS Designer

Wizard for Windows Forms Forum

Posted 15 years ago by brianhal
Avatar
Hi,

I recently upgraded to the v3 Wizard and am running into a problem in the Visual Studio .NET designer. When I attempt to modify a class that inherits from an Actipro WizardPage class the designer does not render the controls I have placed on the form.

Basically, in our project, we have a class that inherits from ActiproSoftware.Wizard.WizardPage. We used to be able to go into the designer and add WinForm controls to it just as if it were a standard form. Now, we get a message that says:

"To add components to your class, drag them from the ServerExplorer or Toolbox and use the Properties window to set their properties. To create methods and events for you class, click here to switch to code view."

This is very easy to duplicate by just creating a new inherited class that inherits from ActiproSoftware.Wizard.WizardPage and you will see what I mean. With v2 you would have seen what looked like a WinForm in the designer. Now when you drag components from the tool box onto the class in the designer, you see them, but they are not rendered by the designer and you can't do anything useful with them in the designer.

I'm guessing this problem was introduced because the v2 WizardPage inherited from System.Windows.Forms.UserControl, while v3 inherits from ActiproSoftware.WinUICore.UIControl. However, this change breaks our old model of being able to create a new class that inherits from WizardPage.

We have need for a custom WizardPage class that contains some code common to most of our wizard pages that allows the getting and committing of data to/from a business object layer without having GUI/backend threading issues.

Is there a work around or recommendation for dealing with this type of problem in v3?

Thanks,
Brian

Comments (1)

Posted 15 years ago by Actipro Software Support - Cleveland, OH, USA
Avatar
WizardPage (in 3.0) inherits UIControl, which in turn inherits ContainerControl. As you said, WizardPage previously inherited UserControl.

The only real difference between a UserControl and ContainerControl (UserControl's base class) is that UserControl adds a couple things like a Load method but nothing major. I think the real difference is that attributes that are applied to UserControl.

Namely, if you use Reflector, you can see they assign a different Designer attribute. You might want to try two things:

1) See if you can apply that Designer attribute to WizardPage even though it doesn't inherit UserControl. Hopefully it would give you designer functionality that you want without blowing up.

2) Figure out what Microsoft is doing with that designer and write your own designer class that duplicates it. Then apply that to the inherited WizardPage class.


Actipro Software Support

The latest build of this product (v2018.1 build 0342) was released 11 days ago, which was after the last post in this thread.

Add Comment

Please log in to a validated account to post comments.