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 :

recuperation de donnee par bouton


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 205
    Par défaut recuperation de donnee par bouton
    Bonjour,

    Ma page aspx contient le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <asp:Table id="TBLForm" 
               runat="server">
               <asp:TableFooterRow runat="server">
                    <asp:TableCell  ColumnSpan="3" runat="server">
                        <asp:Button ID="btnSave" OnClick="btnSave_clic" Text="Valider les modifications" runat=server/>
                    </asp:TableCell>
               </asp:TableFooterRow>
          </asp:Table>
    Puis-je avec ma méthode recuperer les informations contenues dans ma table "TBLForm" garce au
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public void btnSave_clic(object sender, EventArgs e)
    present dans mon code? Et si je ne peux pas, comment mieux organiser ce code pour récupérer les donnees de la table? (il y aura des champs de formulaire dedans)

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Bah t'as accès à l'objet TBLForm dans ton code behind

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 205
    Par défaut
    Mais je n'y ai pas acces dans

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public void btnSave_clic(object sender, EventArgs e)
    Si?

    Je ne comprend pas a quel moment mettre la main dessus (dans la méthode qui gère quel event?)

    Merci pour ton aide, je suis a mon deuxieme jour seulement d'ASP.NET et j'ai du mal a comprendre comment fonctionnent les acces aux donnees apres les events.

  4. #4
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Si tu y as accès

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 205
    Par défaut
    il faut passer par le premier argument pour ca? (object sender dans mon cas) OU bien je dois passer par le 2eme? (j'ai surtout essaye des bidouilles sur le premier qui n'ont rien donne).
    A mon avis il y a un gros truc qui m'échappe

    SUITE-----
    Ha bah je viens d'essayer de taper directement dedans Seul problème, ca dit que j'ai seulement mon bouton dedans (rien d'autre dans la méthode pourtant), et quand ça se reaffiche, il y a en effet que mon bouton qui a survécu.... Est-ce parce que c'est le seul élément que je n'ai pas créé par le code behind mais directement en ASP?

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Par défaut
    C'est quelle version de .NET ?
    Tu crées de manière dynamique ton tableau ?

    Tu dois bien voir le nom de ton tableau quand tu tapes TBLForm, tu le vois bien dans ton intellisence ?


    Fix

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 205
    Par défaut
    Je veux dire c'est que quand je clique sur le bouton, ma table ne contient que le tableau.

    J'aurais du mettre edit a lieu de SUITE

    Donc maintenant je dois trouver pourquoi au postback y'a plus que le bouton qui est dans ma table...

    Pour ma version de .net, c'est celle de wss 3.0, donc asp.net 3.0 (= 2.0 + workflow fondation si j'ai bien compris)

  8. #8
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Par défaut
    Pas compris.

    Ton tableau est créé de manière dynamique dans le Page_Load method ?
    Y a t'il le if(!isPostBack) ?

    Qu'est ce que tu as perdu, que fais tu comme actions ?
    Tu saisis des données dans les cellules ?

    Fix

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    205
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 205
    Par défaut
    Merci pour ton aide, voici mon code behind:

    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
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    using System;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Xml.Linq;
     
    namespace Cra2aerow
    {
     
        public class currentsInfo
        {
            public int month; //mois de janvier = 0 a decembre = 11
            public int monthLen; // nombre de jours dans le mois
            public int firstDayType;
     
            public currentsInfo()
            {
                DateTime date = DateTime.Today;
                this.month = date.Month;
                monthLen = DateTime.DaysInMonth(date.Year, date.Month); //assigne le nombre de jours dans le mois
                firstDayType = (int)date.DayOfWeek - (date.Day % 7); //trouve le premier jour du mois (lun=0, mar=1,....)
            }
        }
     
        public class halfDay //objet representant une demi journee
        {
            public enum Period { am = 0, pm }; // period = matin ou apres midi
            public Period period;
            public int dayNb; //numero du jours de 1 au nobre de jours dans le mois
            public int dayType; //jours de la semaine de dimance = 0 a samedi = 6 (systeme anglo-saxon)
            public enum daysFR { dimanche = 0, lundi, mardi, mercredi, jeudi, vendredi, samedi }
     
            public halfDay()
            {
            }
     
            public halfDay(halfDay source) //constructeur (de demi journee) par copie
            {
                this.dayNb = source.dayNb;
                this.dayType = source.dayType;
                this.period = source.period;
            }
     
            public String getPeriod()
            {
                if (period == Period.am)
                    return ("am");
                else
                    return ("pm");
            }
     
            public bool isWorked() //return true si le jour n'est pas un week-end et n'est pas ferie
            {//ajouter les jours feries via une liste calendrier
                if (this.dayType == (int)halfDay.daysFR.samedi || dayType == (int)halfDay.daysFR.dimanche)
                    return (false);
                return (true);
            }
        }
     
        public partial class v2cra : System.Web.UI.UserControl
        {
            private ArrayList buildArrayDays(currentsInfo datesInfo) //cree un arraylist avec toutes les demi journees du mois
            {
                ArrayList days = new ArrayList();
                halfDay hDay;
                for (int count = 0; count < datesInfo.monthLen; count++)
                {
                    hDay = new halfDay();
                    hDay.dayNb = count + 1;
                    hDay.dayType = (datesInfo.firstDayType + hDay.dayNb) % 7;
                    hDay.period = halfDay.Period.am;
                    days.Add(hDay);
                    hDay = new halfDay(hDay);
                    hDay.period = halfDay.Period.pm;
                    days.Add(hDay);
                }
                return (days);
            }
     
            protected void loadForm() //construit le tableau du formulaire a partir des objets de demi journees
            {
                currentsInfo datesInfo = new currentsInfo();
                ArrayList days = buildArrayDays(datesInfo);
                int listLen = days.Count;
                TableRow line;
                TableCell cell;
                DropDownList ddl;
                CheckBox ChB;
                HtmlButton btn;
     
                TBLForm.BorderWidth = 2;
                TBLForm.CellSpacing = 0;
                for (int count = 0; count < listLen; count++) //ajoute chaque lignes
                {
                    line = new TableRow();
                    if (!(((halfDay)days[count]).isWorked()))//set les couleurs de fond des lignes selon types de jours
                        line.BackColor = System.Drawing.Color.Gray;
                    else if ((count % 2) != 1)
                        line.BackColor = System.Drawing.Color.Yellow;
                    else
                        line.BackColor = System.Drawing.Color.YellowGreen;
     
                    cell = new TableCell(); // ajoute le numero du jour
                    cell.Controls.Add(new LiteralControl(((halfDay)days[count]).dayNb.ToString()));
     
                    line.Cells.Add(cell);
     
                    cell = new TableCell();// ajoute am/pm
                    cell.Controls.Add(new LiteralControl(((halfDay)days[count]).getPeriod()));
                    line.Cells.Add(cell);
     
                    cell = new TableCell();// ajoute lla check-box
                    ChB = new CheckBox();
                    if ((((halfDay)days[count]).isWorked()))
                        ChB.Checked = true; // les jours ouvres sont coches par defaut (voir specs)
                    cell.Controls.Add(ChB);
                    line.Cells.Add(cell);
     
                    cell = new TableCell();// ajoute la drop down list des clients
                    ddl = new DropDownList();
                    cell.Controls.Add(ddl);
                    line.Cells.Add(cell);
     
                    cell = new TableCell();// ajoute la drop down list des projets
                    ddl = new DropDownList();
                    cell.Controls.Add(ddl);
                    line.Cells.Add(cell);
     
                    cell = new TableCell();// ajoute l'input de saisie libre
                    cell.Width = 150;
                    cell.Controls.Add(new HtmlInputText());
                    line.Cells.Add(cell);
     
                    TBLForm.Rows.Add(line);
                }
            }
     
            public void btnSave_clic(object sender, EventArgs e)
            {
                toto.Text = TBLForm.Rows[0].Cells[0].Controls[0].GetType().ToString();
     
            }
     
            protected void Page_Load(object sender, EventArgs e)
            {
     
                if (!IsPostBack) // si premier affichage de la page, il faut builder le formulaire
                    loadForm();
            }
        }
    }
    La création de la table (dynamiquement) est contenue dans la méthode loadform.

Discussions similaires

  1. [JTable] recuperer les donnees
    Par clemouf dans le forum Composants
    Réponses: 3
    Dernier message: 08/02/2019, 15h44
  2. recuperation des donnees snmp sur un autre poste en java
    Par maire106 dans le forum Développement
    Réponses: 4
    Dernier message: 17/04/2011, 13h17
  3. Réponses: 2
    Dernier message: 10/05/2007, 12h55
  4. Réponses: 12
    Dernier message: 03/11/2005, 12h26
  5. [KNOPPIX] Linux pour la récupération de données
    Par manunu dans le forum Autres
    Réponses: 8
    Dernier message: 06/05/2004, 12h30

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