IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Perte de variable dans mon webusercontrol


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Inscrit en
    Septembre 2002
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 270
    Par défaut Perte de variable dans mon webusercontrol
    Hello,

    j'ai crée un webUserControl contenant un Panel, des textboxes et un customvalidator, car ce 'module' est utilisé sur plusieurs pages et le controle de validation est assez particulier.

    mon problème est que je le place sur une page avec multiview, lorsque je clique sur le bouton pour passez à la view suivante, il exécute ma fonction de validation correctement. mais la valeur de ma propriété a disparu. et donc ma validation foire car elle utilise cette propriété.

    Pourriez-vous m'aider?


    voici le code de mon webusercontrol


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    Partial Class controles_IBANAccount
        Inherits System.Web.UI.UserControl
     
        Private ls_IBAN As String
        Private validateAccount As accountManager = New accountManager()
     
        Property IBAN() As String
            Get
                Return ls_IBAN
            End Get
            Set(ByVal value As String)
                ls_IBAN = value
                validateAccount.splitAccount(pnlIBAN, value)
            End Set
        End Property
     
        Protected Sub IBANValidator(ByVal source As Object, ByVal args As ServerValidateEventArgs)
     
            'ls_IBAN = UCase(Right(ls_IBAN, Len(ls_IBAN) - 4) & Left(ls_IBAN, 4))
            Dim test As String = IBAN
     
        End Sub
    End Class

  2. #2
    Membre confirmé

    Inscrit en
    Novembre 2003
    Messages
    168
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 168
    Par défaut
    Voilà une solution à ce petit problème particulier, mais je ne suis pas sûr qu'elle est utile et sans conséquences : Pour les boutons ou les liens qui permettent de passer d'une view à une autre, définit la propriété causesValidation à false.

  3. #3
    Membre très actif
    Inscrit en
    Septembre 2002
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 270
    Par défaut
    Voilà une solution à ce petit problème particulier, mais je ne suis pas sûr qu'elle est utile et sans conséquences : Pour les boutons ou les liens qui permettent de passer d'une view à une autre, définit la propriété causesValidation à false.
    Voici le message d'erreur que cela provoque


    Page.IsValid cannot be called before validation has taken place. It should be queried in the event handler for a control that has CausesValidation=True and initiated the postback, or after a call to Page.Validate.

  4. #4
    Membre chevronné Avatar de Redouane
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    435
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2003
    Messages : 435
    Par défaut
    Bonjour,

    essaye d'utiliser ViewState dans ta proprièté :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Property IBAN() As String
            Get
                If (ViewState("IBAN") IsNot Nothing) Then
                    Return ViewState("IBAN")
                End If
                Return String.Empty
            End Get
            Set(ByVal value As String)
                ViewState("IBAN") = value
                validateAccount.splitAccount(pnlIBAN, value)
            End Set
        End Property

  5. #5
    Membre très actif
    Inscrit en
    Septembre 2002
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 270
    Par défaut
    Merci,

    ca fonctionne au poil !!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 10
    Dernier message: 22/05/2007, 11h07
  2. Perte de variables dans une session SSL
    Par linar009 dans le forum Langage
    Réponses: 7
    Dernier message: 30/10/2006, 12h51
  3. [SQL] Perte de variable dans test ISSET
    Par dfournier dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 21/10/2006, 12h03
  4. Réponses: 9
    Dernier message: 12/05/2006, 09h06
  5. Importer via asp.net c# des variables dans mon namespace xsl
    Par akaii dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 23/01/2006, 08h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo