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

VB.NET Discussion :

Portée des variables dans une classe [Débutant]


Sujet :

VB.NET

  1. #21
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 742
    Points
    9 742
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par Jah73 Voir le message
    @DotNetMatt :

    Comment je peux faire pour y remédier ?
    En vérifiant si tu es en postback ou non dans le Init :
    Code VB.NET : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub Page_Init(...)
        If (Not Page.IsPostBack) Then
            ' Ton code de création du GridView, que tu stockeras dans la session
        Else
            ' Si tu es en postback, tu récupères le gridview depuis la session
        End If
    End Sub

  2. #22
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 066
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 066
    Points : 4 233
    Points
    4 233
    Par défaut
    Ta customclass doit être sérialisable pour pouvoir être stocké dans le viewstate ou en session (normalement), pour cela il faut rajouter l'attribut Serializable à ta classe et autre classe qu'elle peut contenir.
    http://msdn.microsoft.com/en-us/libr...code-snippet-2

  3. #23
    Membre habitué
    Homme Profil pro
    Etudiant
    Inscrit en
    Octobre 2012
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 154
    Points : 167
    Points
    167
    Par défaut
    @DotNetMatt: Merci pour tes réponses, on va y arriver !

    Je pense que je n'ai pas procédé de le bonne manière :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private _sessionBatch As New BatchValues 'Permet de créer des gridView vides
     
    Protected Sub Page_Init(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Init
         If Not Page.IsPostBack Then
              Session("list") = _sessionBatch
         Else
              _sessionBatch = Session("list")
         End If
    End Sub
    Actuellement, si j’appuie sur le bouton Rechercher plusieurs fois, les gridviews s'additionnent; si j'appuie sur le bouton Export, ils disparaissent...

    Galère


    @youtpout978:
    Merci, je m'occupe de ca dès que j'ai reglé le problème du dessus

  4. #24
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 742
    Points
    9 742
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par youtpout978 Voir le message
    Ta customclass doit être sérialisable pour pouvoir être stocké dans le viewstate ou en session (normalement)
    Pour le ViewState oui il le faut, par contre pour la session il me semble que ce n'est obligatoire que dans le cas où on utilise le mode InProc, car l'objet SessionState est serializé avant d'être stocké dans la base de données. Mais à vérifier ^^

    Citation Envoyé par Jah73
    Actuellement, si j’appuie sur le bouton Rechercher plusieurs fois, les gridviews s'additionnent; si j'appuie sur le bouton Export, ils disparaissent...
    Arf tu dois encore avoir quelque chose de fait au mauvais moment. Il faut que tu te documentes un peu plus sur le cycle de vie d'une page ASP.NET et savoir où doivent être réalisées certaines opérations. Par exemple en général on déclare les controls dans le Init, ensuite on fait le binding dans le Load. Cet ordre a son importance et doit donc être respecté afin d'avoir le comportement attendu, et c'est surtout le cas quand tu crées tes controls dans le code behind.

    Il y a beaucoup de resources sur le sujet, en voici quelques unes :
    - FAQ - Quel est le cycle de vie d'une page ?
    - Tutoriel : Comprendre la création de contrôles ASP.NET et leur cycle de vie en C#

    Sinon voici aussi deux articles en Anglais qui sont bien faits :
    - ASP.NET Application and Page Life Cycle (rubrique In What Event We Should Do What?)
    - ASP.NET Page Life Cycle

    Si ça ne te suffit pas, cherche "asp.net page life cycle" sur Google

  5. #25
    Membre habitué
    Homme Profil pro
    Etudiant
    Inscrit en
    Octobre 2012
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 154
    Points : 167
    Points
    167
    Par défaut
    Le sujet est plus côté ASP.NET, mais je viens le clore si quelqu'un est dans le même cas que moi.

    J'ai suivi les conseils de DotNetMatt. J'ai réussi à stocker mes variables. Pour l'état de ma checkbox, j'ai fait un "_checkBox.AutoPostBack = True" afin qu'elle modifie dynamiquement son état

    Si vous voulez plus de détail :

    http://www.developpez.net/forums/d13...k/#post7519170

    Merci à tous !

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Portée d'une variable dans une classe
    Par jeff0123 dans le forum Langage
    Réponses: 7
    Dernier message: 12/02/2014, 15h30
  2. Regrouper des variables dans une nouvelle classe
    Par saraharas dans le forum SAS Base
    Réponses: 2
    Dernier message: 13/06/2011, 15h27
  3. [C#2005] Stocker des variables dans une classe
    Par Herlece dans le forum Windows Forms
    Réponses: 7
    Dernier message: 13/10/2008, 10h30
  4. Pouvoir gérer les actions des boutons dans une classe
    Par Cyborg289 dans le forum Composants
    Réponses: 2
    Dernier message: 08/07/2005, 12h08
  5. Réponses: 2
    Dernier message: 27/03/2005, 16h09

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