2010-05-04 10 views
0

Je travaille avec l'outil CreateUserWizard pour créer une page d'inscription. Ceci est la première fois et je suis problème heurte à ce qui suit:Empêche la navigation vers CreateUserWizardStep dans l'événement Postback du bouton suivant

I défini deux étapes WizardSteps dans la page:

<WizardSteps> 
      <asp:WizardStep ID="CreateUserWizardStep0" runat="server" Title="Sign Up for your new Account !!"> 

    <asp:TextBox ID="Email" runat="server"> 

Dans le premier assistant étape, l'utilisateur fournit un e-mail, et nous devons vérifier si cet e-mail répond à certains critères (s'il existe dans notre base de données interne, le pays est US, etc.) et s'il/elle il est éligible naviguer vers CreateUserWizardStep1.

J'ai un StartNextButton dans le modèle Start Navigation pour le WizardStep0.

<StartNavigationTemplate> 
     <br /> 
     <asp:Button ID="StartNextButton" runat="server" CommandName="MoveNext" OnClick="StartNextButton_Click" 
      Text="Check My Eligibility" /> 
    </StartNavigationTemplate> 

Je fais tout la logique de vérification de l'admissibilité en cas de post-retour OnClick="StartNextButton_Click. S'il n'est pas éligible, je devrais afficher le message d'erreur dans la zone de texte step0 et empêcher la navigation vers CreateUserWizardStep1.

J'ai essayé les éléments suivants:

if(noteligible) 
{ 
        lblError1.Visible = true; 
        lblError1.Text = this.hfUserAlreadyRegistered.Value.ToString(); 
        this.CreateUserWizard1.ActiveStepIndex = this.CreateUserWizard1.WizardSteps.IndexOf(this.CreateUserWizardStep0); 
        this.CreateUserWizard1.Controls.Remove(CreateUserWizardStep1); 
        this.CreateUserWizard1.ActiveStepIndex = 0; 
        break; 

} 

Mais cela ne fonctionne pas. Je suis sorti de l'étape0 et l'étape1 arrive indépendamment de cela.

Comment puis-je rester à l'étape 0 et afficher le message d'erreur lorsque l'utilisateur n'est pas éligible et accéder à l'étape 1 uniquement lorsqu'il peut s'inscrire?

Merci beaucoup.

Répondre

1

Voici quelques conseils:

this.CreateUserWizard1.ActiveStepIndex = -1;