Barbara Rivera - 2009-03-30

Greetings:

I have a main task .  Within the MainTask I have setup the below Interaction points

        [IPoint(typeof(ApplicantRoleController), true, JobCategory)]
        public const string ApplicantRole = "ApplicantRole";

        [IPoint(typeof(JobCategoryController), false, PropertyType, ApplicantRole)]
        public const string JobCategory = "JobCategory";

        [IPoint(typeof(PropertyTypeController), false, JobCategory, UseCategory, ItemizedList, RepairList)]
        public const string PropertyType = "PropertyType";

        [IPoint(typeof(UseCategoryController), false, ProposedUse, PropertyType)]
        public const string UseCategory = "UseCategory";

        [IPoint(typeof(ProposedUseController), false, PermitApp1, UseCategory)]
        public const string ProposedUse = "ProposedUse";

The idea is to have the following workflow:

    Forward Flow: ApplicantRole => JobCategory => PropertyType => UseCategory => ProposedUse

    Backward Flow: ProposedUse => UseCategory => PropertyType => JobCatgory => ApplicantRole

When I navigate from view to view (Forward and Backward) only using Task.Navigator.Navigate("") within a button onclick, navigation is successful (see code below).

    public void OnNext_OnClick(object sender, EventArgs e)
    {
       Controller.Task.Navigator.Navigate(NewBuildingAppTask.PropertyType);
    }

    public void OnPrevious_OnClick(object sender, EventArgs e)
    {
        Controller.Task.Navigator.Navigate(NewBuildingAppTask.ApplicantRole);
    }

But when I use Web Browser GoBack and GoForward, and then go to click "OnNext" the button on click event is not triggered and it will go to the last view that I navigated to using Task.Navigator.Navigate("").

    For example:

        if I navigate forward from View to View using the OnNext button onclick events,

        Task.Navigator.Navigate("JobCategory") => Task.Navigator.Navigate("PropertyType") => Task.Navigator.Navigate("UseCategory")

        and then navigate backwards using the WebBrowser "GoBack" button from

        UseCategory => PropertyType => JobCategory

        and then go forward again using the "OnNext" button, the onclick event will not be triggered and the page will go to "UseCategory", not "PropertyType" where it is suppose to go.

When I set the second parameter of the above Interaction Point from false to true, everything works successfully but it goes against the real purpose of having the second parameter false,  defining the workflow.

Please let me know if there is a solution to this issue.

I appreciate your time and Thanks.