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 :

[C#]table dynamique problème de viewstate


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 61
    Par défaut [C#]table dynamique problème de viewstate
    Bonjour

    jai un controle table auquel j'ajoute des lignes dynamiquement vai une fonction appelé dans le page_load , problème : après un postback, je perds toutes les lignes ajoutées.
    je cré ces lignes uniquement au premier chargement, tout se passe comme si le viewstate de mon tableau ne fonctionnait pas
    meri de votre aide

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
     
     protected void Page_Load(object sender, EventArgs e)
        {
     
            if (! Page.IsPostBack)
            {
                int an = 2006; // année 2006
                int mois = 12; // mois de novembre
                DateTime debut = new DateTime(an, mois, 1);
                DateTime fin = new DateTime(an, mois, 31);
                Generer(debut, fin);
     
            }
     
        }
     
        public  void Generer(DateTime debut,DateTime fin)
        {
     
            TimeSpan diff = fin - debut;
            int nbjours = diff.Days + 1;
            DateTime tmpd = debut;
     
                   tCorps.Attributes.Add("Border", "1");
            tCorps.Attributes.Add("style", "WIDTH:100%;HEIGHT:100%;cellspacing:0;cellpadding:0;");
     
            TableRow trHead = new TableRow();
     
            TableCell tdCell1 = new TableCell();
            TableCell tdCell2 = new TableCell();
            tdCell1.RowSpan = 3;
            tdCell1.Text  = "Colza";
            trHead.Controls.Add(tdCell1);
     
            tdCell2.ColumnSpan = nbjours;
           tdCell2.Text = debut.ToString("MMMM yyyy");
            trHead.Controls.Add(tdCell2);
             tCorps.Controls.Add(trHead);
            TableRow trjour = new TableRow();
     
            while (tmpd <= fin )
            {
                TableCell tdjour = new TableCell();
                tdjour.Attributes.Add("style", "cellspacing:0;cellpadding:0;");
                tdjour.Attributes.Add("class", "fondMois");
                tdjour.Text = tmpd.ToString("ddd");
                trjour.Cells.Add(tdjour);
     
                tmpd=tmpd.AddDays(1);
            }
            tCorps.Rows.Add(trjour);
            tmpd = debut;
            TableRow trjour1 = new TableRow();
     
            while (tmpd <= fin )
            {
                TableCell tdjour1 = new TableCell();
                tdjour1.Attributes.Add("style", "cellspacing:0;cellpadding:0;");
                tdjour1.Attributes.Add("class", "fondMois");
                tdjour1.Text  = tmpd.ToString("%d");
                trjour1.Cells.Add(tdjour1);
                tmpd=tmpd.AddDays(1);
     
            }
            tCorps.Rows.Add(trjour1);
     
     
     
        }

  2. #2
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    Il faut peut etre que tu crées tes lignes de tableaux à l'initialisation de ta page non?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 61
    Par défaut
    ça marche mais ça équivaut à créer mes lignes à chaque chargement, postback ou pas ! ç areviend au même que d'enlever la condition ! de postbak dans le load non ?
    je suis passé à VS 2005, maintenant dans le fichier .cs je ne vois plus la procédure init ni la déclaratrion des controles de la page comme c'était le cas avec VS 2003

  4. #4
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    c'est une bonne question. Je ne suis aps assez bon pour te répondre.
    Je ne sais pas si lorsque tu as un objet declaré dans ta page aspx et que tu le changes dynamiquement dans ton code , les infos de modifs rentre dans e viewstate.
    D'apres moi, il faut recommencer le code à chaque chargement de la page, mais je peux me tromper.

    En tout cas ce qui est sur c'est que, si tu dois recuperer des evenements sur ces objets crée dynamiquement, il vaut mieux avoir fait ces modifs dans l'initialisation de la page pour pouvoir y acceder dans le reste du traitement.

    J'espere que cela aura pu t'aider un peu...

Discussions similaires

  1. [PRO*C] Problème avec CREATE TABLE et nom de table dynamique
    Par laurent_56 dans le forum Interfaces de programmation
    Réponses: 1
    Dernier message: 24/11/2011, 18h06
  2. Problème de NULL sur un Pivot basé sur une Table Dynamique
    Par guilld dans le forum Développement
    Réponses: 3
    Dernier message: 01/08/2011, 15h05
  3. Problème pivot table dynamique
    Par chicken92000 dans le forum Développement
    Réponses: 4
    Dernier message: 04/09/2009, 19h22
  4. Problème pivot table dynamique
    Par chciken92000 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 04/09/2009, 14h17
  5. Gestion de table dynamique access avec delphi 7
    Par bob.marley dans le forum Bases de données
    Réponses: 7
    Dernier message: 22/04/2004, 13h12

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