ControlActivationService activates the wrong WorkItem

Topics: CAB & Smart Client Software Factory
May 31, 2007 at 11:39 PM
Here is the Scenario:

I have a parent workitem (ManageSuppliersWorkItemController) this workitem has a child workitem (SupplierWorkItemController) which has several child workitems (Edit, Delete etc..).

I use a deckworkspace to show the view associated with the Edit workitem (EditSupplierView), if the user changes suppliers in the middle of an Edit, I deactivate the edit workitem and hide the view allowing the user to come back to the supplier and finish the edit.

The problem is that when I select edit and click on a control in the EditSupplierView, the ControlActivationService takes over and activates not the Edit workitem, but the ManageSuppliersWorkItemController thus deactivating the Edit workitem and hiding the EditSupplierView.

Is this the correct behavior? Seems non-intuitive if it is. It seems more appropriate to activate the WorkItem whose Items collection contains the view.

Any insight would be greatly appreciated.
Jun 1, 2007 at 4:01 PM
After investigating a little further it looks like the DeckWorkspace is being activated when I click on a control that is on a view that is being shown in the workspace. Is there any way for the DeckWorkspace to ignore this?