Creating generic Wizard components for CAB

Topics: CAB & Smart Client Software Factory
May 9, 2006 at 9:54 AM
originally posted by: kobush

I started working on a generic component for creating Wizards in CAB. I want to make similar to the Wizard component in System.Web. I think it should be a WorkItem that maintains a collection of WizardSteps. This gives the benefit of storing the shared data collected from steps in WorkItem's State. Each Step should have assigned SmartPart that would be displayed in specified Workspace. It should also publish set of default Commands that SmartParts can use to navigate (like MoveNext, MovePrevious, Cancel, etc.). This would allow to attach some buttons to invoke this operations or even create generic navigation panel. On the other hand the WorkItem should also allow the programmer to control the order of navigation (for example to prevent moving from a step or to skip a step) with virtual methods and cancelable events.

I've started looking how to use some of the CAB infrastructure to integrate this. Here is the first problem I've encountered: I wanted to make the WizardStepCollection a ManagedObjectCollection. However creating one requires some internal objects that are not accessible for inherited WorkItems (lifetime, locator, builder). Do you have any suggestions how to deal with this?
May 17, 2006 at 8:37 PM
originally posted by: victor2005

Very actual stuff. Do you have any progress?