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

Dotnet Discussion :

[WebForms][1.1] Conflit entre mode dans un DataGrid


Sujet :

Dotnet

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 28
    Par défaut [WebForms][1.1] Conflit entre mode dans un DataGrid
    bonjour a tous,

    je viens vers vous car malgré mes test et recherches sur forum je n'arrive pas a trouver la solution.

    j'ai créé un datagrid dont je génère le formalisme et qui gère l'édition.cependant l'édition ne permet pas de supprimer une ligne de ce datagrid(bdd).donc je crée une colonne supplémentaire avec un bouton supprimer.pour que le commandName renvoie a une sub,j'insère le tag dans le datagrid OnItemCommand pour faire réagir mon bouton.

    Mais voila le drame,a ce moment la le mode édition ne fonctionne plus.Par contre si je retire cette commande tout rentre dans l'ordre.On dirait que OnItemCommand prend le pas sur les autres commandes "OnEditCommand/OnUpdateCommand/OnCancelCommand".

    je precise que je lie ce datagrid a un datareader et que les operations se font par requetes sql.Je sais que ca n'est pas académique(datareader) mais ca fonctionne tres bien et pour mes besoins c'est le plus simple.

    quelqu'un d'érudit pourrait me donner un exemple et m'expliquer simplement svp.Si possible me donner le code html du datagrid car c'est surtout la que je plante pour l'instant.voila pour ma part mon code html:

    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
     
     <table style="WIDTH: 771px; HEIGHT: 150px" border="2">
                <tbody>
                    <tr>
                        <td bgcolor="#ffe0c0">
                            <asp:Label id="Label1" runat="server" Height="133px" BackColor="#C0FFC0"></asp:Label>
                            <asp:DataGrid id="DataGrid1" runat="server" Height="150px" Width="745px" onEditcommand="editer" onupdatecommand="update" onCancelCommand="cancel" AutoGenerateColumns="False">
                                <HeaderStyle backcolor="#E0E0E0"></HeaderStyle>
                                <Columns>
                                    <asp:TemplateColumn HeaderText="nom">
                                        <ItemTemplate>
                                            <asp:label id="lblnom" runat="server" text='<%# container.dataItem("nom") %>'></asp:label>
                                        </ItemTemplate>
                                        <EditItemTemplate>
                                            <asp:textbox id="txtNom" runat="server" text='<%# container.dataitem("nom") %>' size="15"></asp:textbox>
                                        </EditItemTemplate>
                                    </asp:TemplateColumn>
                                    <asp:TemplateColumn HeaderText="prenom">
                                        <ItemTemplate>
                                            <asp:label id="lblprenom" runat="server" text='<%# container.dataItem("prenom") %>'></asp:label>
                                        </ItemTemplate>
                                        <EditItemTemplate>
                                            <asp:textbox id="txtprenom" runat="server" text='<%# container.dataitem("prenom") %>' size="10"></asp:textbox>
                                        </EditItemTemplate>
                                    </asp:TemplateColumn>
                                    <asp:TemplateColumn HeaderText="connu">
                                        <ItemTemplate>
                                            <asp:label id="lblconnu" runat="server" text='<%# container.dataItem("connu") %>'></asp:label>
                                        </ItemTemplate>
                                        <EditItemTemplate>
                                            <asp:textbox id="txtconnu" runat="server" text='<%# container.dataItem("connu") %>' size="2"></asp:textbox>
                                        </EditItemTemplate>
                                    </asp:TemplateColumn>
                                    <asp:TemplateColumn HeaderText="dossier">
                                        <ItemTemplate>
                                            <asp:label id="labldossier" runat="server" text='<%# container.dataItem("dossier") %>'></asp:label>
                                        </ItemTemplate>
                                        <EditItemTemplate>
                                            <asp:label id="lbldossier" runat="server" text='<%# container.dataItem("dossier") %>' size="5"></asp:label>
                                        </EditItemTemplate>
                                    </asp:TemplateColumn>
                                    <asp:TemplateColumn HeaderText="demandeur">
                                        <ItemTemplate>
                                            <asp:label id="lbldemandeur" runat="server" text='<%# container.dataItem("origine") %>'></asp:label>
                                        </ItemTemplate>
                                        <EditItemTemplate>
                                            <asp:textbox id="txtdemandeur" runat="server" text='<%# container.dataItem("origine") %>' size="15"></asp:textbox>
                                        </EditItemTemplate>
                                    </asp:TemplateColumn>
                                    <asp:TemplateColumn HeaderText="type">
                                        <ItemTemplate>
                                            <asp:label id="lbltype" runat="server" text='<%# container.dataItem("type") %>'></asp:label>
                                        </ItemTemplate>
                                        <EditItemTemplate>
                                            <asp:textbox id="txttype" runat="server" text='<%# container.dataItem("type") %>' size="10"></asp:textbox>
                                        </EditItemTemplate>
                                    </asp:TemplateColumn>
                                    <asp:TemplateColumn HeaderText="fonctionnaire">
                                        <ItemTemplate>
                                            <asp:label id="lblfonctionnaire" runat="server" text='<%# container.dataItem("fonctionnaire") %>'></asp:label>
                                        </ItemTemplate>
                                        <EditItemTemplate>
                                            <asp:textbox id="txtfonctionnaire" runat="server" text='<%# container.dataItem("fonctionnaire") %>' size="5"></asp:textbox>
                                        </EditItemTemplate>
                                    </asp:TemplateColumn>
                                    <asp:TemplateColumn HeaderText="reception">
                                        <ItemTemplate>
                                            <asp:label id="reception" runat="server" text='<%# container.dataItem("reception") %>'></asp:label>
                                        </ItemTemplate>
                                        <EditItemTemplate>
                                            <asp:textbox id="txtreception" runat="server" text='<%# container.dataItem("reception") %>' size="6"></asp:textbox>
                                        </EditItemTemplate>
                                    </asp:TemplateColumn>
                                    <asp:TemplateColumn HeaderText="cloture">
                                        <ItemTemplate>
                                            <asp:label id="cloture" runat="server" text='<%# container.dataItem("cloture") %>'></asp:label>
                                        </ItemTemplate>
                                        <EditItemTemplate>
                                            <asp:textbox id="txtcloture" runat="server" text='<%# container.dataItem("cloture") %>' size="6"></asp:textbox>
                                        </EditItemTemplate>
                                    </asp:TemplateColumn>
                                    <asp:TemplateColumn HeaderText="Mode">
                                        <ItemTemplate>
                                            <asp:linkbutton id="lkdelete" runat="server" text="supprimer" commandName="supprimer"></asp:linkbutton>
                                        </ItemTemplate>
                                    </asp:TemplateColumn>
                                    <asp:EditCommandColumn ButtonType="LinkButton" UpdateText="modifier" CancelText="annuler" EditText="editer"></asp:EditCommandColumn>
                                </Columns>
                            </asp:DataGrid>
                        </td>
                    </tr>
                </tbody>
            </table>
    merci de votre aide a tous et bonnes fêtes

  2. #2
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut
    Bonnes fêtes à toi également

    Je ne sais pa si celà va t'arranger mais perso je prefere gérer en effet la
    Méthode DataGrid.OnItemCommand
    en recupérant le CommandName du sender et selon le cas déclencher mes méthodes Edit, Update, Delete, Cancel en transmettant le paramètre e de type DataGridCommandEventArgs commme l'exemple du lien ci dessus

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 28
    Par défaut
    re,

    aïe! en effet ca m arrange pas des masses puisque j'ai utilisé cette commande. mon probleme se situe dans le code html:

    comment faire pour que mon datagrid accepte les methodes d'édition et la méthode de suppression associée a mon bouton dans la colonne supplémentaire créée.

    en effet le mode édition du datagrid ne gère pas la suppression,voila pourquoi je crée une colonne avec un bouton pour la suppression et je relie le tout par "<asp:datagrid ... OnitemCommand=""/>.

    mais avec oneditcommand/OnUpdateCommand/OnCancelCommand ca plante.seul OnItemCommand est pris.

    j'espere que c'est plus clair.

    merci pour votre aide

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 28
    Par défaut
    pardon cher ami modérateur, quelle pétasse je fais.... je n ai pas suivi le lien.

    je suis vraiment un bourricot.
    je teste ca tout de suite.

    merci encore

  5. #5
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut
    Désolé mais tu étais déjà très clair et effectivement ma réponse est une gestion en code-behind côté Serveur

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 28
    Par défaut
    bon c'est testé et ca fonctionne -).
    j'ai arrangé a ma sauce car étant noob en aspx j'ai pas tout compris l'histoire que me racontait msn.enfin au final ca marche et c'est tout ce qui compte.

    par contre c'est quand même assez galère car on détourne encore et toujours par de multiples appels a procédures ou autres.comme si ils avaient pas pu intégrer la fonction dans le mode édition de l objet.en effet éditer ca veut aussi dire supprimer si besoin.
    pfff! fatiguant tout ca.

    merci à toi mon sauveur.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/06/2008, 15h05
  2. Conflit entre sous-section et section dans une en-tête
    Par patemino dans le forum Mise en forme
    Réponses: 3
    Dernier message: 17/03/2008, 11h09
  3. Conflit entre deux js dans une page HTML (inclure plusieurs js)
    Par karinemariejeanne dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 28/06/2007, 16h31
  4. Réponses: 1
    Dernier message: 02/06/2006, 11h54
  5. [WebForms]Afficher telle ou telle image dans un datagrid
    Par Emdis dans le forum Général Dotnet
    Réponses: 3
    Dernier message: 30/05/2005, 18h02

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