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 :

Repeater n'a plus d'item dans mon BtnSave_Click ! [Débutant]


Sujet :

ASP.NET

  1. #1
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 154
    Points : 7 403
    Points
    7 403
    Billets dans le blog
    1
    Par défaut Repeater n'a plus d'item dans mon BtnSave_Click !
    Bonjour,

    Dans une page, j'ai un repéteur :
    Code aspx : 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
     
                        <asp:Repeater runat="server" ID="RepeaterTickets" ItemType="Ticket">
                            <ItemTemplate>
                                <tr>
                                    <td>
                                        <hr />
                                    </td>
                                </tr>
                                <tr>
                                    <td>
                                        <%# Item.Start.ToString("dd/MM/yyyy HH:mm") %> - <%# Item.End.ToString("HH:mm") %><br />
                                        <asp:Label AssociatedControlID="TxtSubTicketName" Text="Sujet : " runat="server"/><asp:TextBox ID="TxtSubTicketId" runat="server" style="display:none" Text="<%# Item.Id %>" /><asp:TextBox ID="TxtSubTicketName" runat="server" Text="<%# Item.Name %>" /><br />
                                        <asp:Label AssociatedControlID="TxtSubTicketDescription" Text="Résumé : " runat="server"/><br /><asp:TextBox ID="TxtSubTicketDescription" runat="server" TextMode="MultiLine" placeholder="Description complète des actions menées..."  Text="<%# Item.Description %>"/><br />
                                    </td>
                                </tr>
                            </ItemTemplate>
                        </asp:Repeater>

    Je l'alimente dans mon !IsPostBack :
    Code csharp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
                RepeaterTickets.DataSource = ticket.Children;
                RepeaterTickets.DataBind();

    Et j'ai un bouton Save :
    Code aspx : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <asp:Button ID="BtnSave" Text="Enregistrer" runat="server" OnClick="BtnSave_Click" CssClass="btnsubmit" Enabled="false" />

    Dont voici le code :
    Code csharp : 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
     
        protected void BtnSave_Click(object sender, EventArgs e)
        {
            foreach (RepeaterItem item in RepeaterTickets.Items)
            {
                int SubTicketId = int.Parse(((TextBox)item.FindControl("TxtSubTicketId")).Text);
                TextBox TxtSubTicketName = (TextBox)item.FindControl("TxtSubTicketName");
                TextBox TxtSubTicketDescription = (TextBox)item.FindControl("TxtSubTicketDescription");
     
                foreach (Ticket subticket in ticket.Children)
                {
                    if (subticket.Id == SubTicketId)
                    {
                        if (subticket.Name != TxtSubTicketName.Text || subticket.Description != TxtSubTicketDescription.Text)
                        {
                            subticket.Name = TxtSubTicketName.Text;
                            subticket.Description = TxtSubTicketDescription.Text;
                            subticket.Update();
                        }
                        break;
                    }
                }
            }
     
            RepeaterTickets.DataSource = ticket.Children;
            RepeaterTickets.DataBind();
        }

    Je ne comprends pas pourquoi, mais "RepeaterTickets.Items" ne contient jamais aucun élément lorsque je clique sur le bouton !
    Comment est-ce possible ? Qu'est-ce que j'ai oublié ?
    On ne jouit bien que de ce qu’on partage.

  2. #2
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 154
    Points : 7 403
    Points
    7 403
    Billets dans le blog
    1
    Par défaut
    Désolé, finalement ça marche...
    On ne jouit bien que de ce qu’on partage.

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

Discussions similaires

  1. (dé)coché un item de plus dans mon TCD
    Par halaster08 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 20/10/2016, 15h59
  2. Je ne trouve plus le formulaire dans mon fichier excel
    Par abdelkarim_1987 dans le forum Excel
    Réponses: 0
    Dernier message: 22/08/2013, 09h06
  3. plus de boutons dans mon formulaire
    Par soleilgym64 dans le forum IHM
    Réponses: 4
    Dernier message: 17/08/2009, 07h46
  4. comment récupérer la plus récente date dans mon fichier XML?
    Par brain001 dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 19/04/2009, 12h14
  5. Réponses: 2
    Dernier message: 02/06/2005, 10h21

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