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

 .NET Discussion :

Detailsview: comment passer du mode insert à edit en gardant le dernier enregistremen


Sujet :

.NET

  1. #1
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    78
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Avril 2004
    Messages : 78
    Points : 56
    Points
    56
    Par défaut Detailsview: comment passer du mode insert à edit en gardant le dernier enregistremen
    Bonjour,

    Je suis un grand débutant en .Net et en C# mais j'essaie de développer une application web pour m'entrainer et apprendre.

    Depuis quelques jours, je reste bloqué sur un problème. Je suis conscient que mes connaissances ne sont pas suffisantes (je me forme avec les coach MSDN) mais si quelqu'un pouvait m'aider ce serait génial.

    L'idée de mon application est de gérer un salon de toilettage pour chien. J'ai un écran pour créer un client et lui attribuer un ou plusieurs animaux. Jusque là ça va.

    Dans cet écran, j'utilise deux detailsview. Le premier pour créer le client, le second pour lui créer un ou plusieurs chiens. J'ai les questions suivantes:

    1/ comment faire pour que lorsque je clique sur le linkbutton "ajouter" du detailsview client, il ajoute les données puis reste sur le dernier client créé en modification?
    J'ai fait plusieurs tests sur les différents évènements (itemcreated, modechanging....) mais je n'y arrive pas, tout ce que j'ai réussi à faire:
    - ajouter le client dans la base et rester en mode insert
    - passer en mode édition mais les données affichées sont celkle du premier élément de ma table et non le dernier créé

    2/ après je veux faire exactement la même opération pour le chien (sachant que j'alimenterai un gridview pour lister les animaux) sachant que le details view est doit être initialisé avec l'ID du client que je viens de créer.

    Je sais que je demande peut-être beaucoup mais je galère vraiment et comme ça m'intéresse beaucoup, j'ai très envie d'avancer.

    Merci d'avance à ceux qui voudront bien m'aider là-dessus

    Fab

  2. #2
    Membre confirmé
    Avatar de Dung-Tri
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 109
    Points : 597
    Points
    597
    Par défaut
    Essai la méthode ChangeMode ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    NomDeTonDetailView.ChangeMode(NouveauMode);
    NouveauMode peut etre Insert, Edit ou ReadOnly.

  3. #3
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    78
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Avril 2004
    Messages : 78
    Points : 56
    Points
    56
    Par défaut
    Tout d'abord, merci de ta réponse.

    Je connais cette méthode et je l'utilise déjà. Le problème c'est que quand je créé un nouvel enregistrement et que je bascule en mode édition après la création, il me replace automatiquement sur le premier enregistrement et non le dernier(celui que je viens de créer)

    As-tu une idée?

  4. #4
    Membre confirmé
    Avatar de Dung-Tri
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 109
    Points : 597
    Points
    597
    Par défaut
    Heu, Tu recharge pas ta liste quelque pars? l'Id que tu balance a ton detail view se retrouverai pas changé du a un evenement que taurai pas vu

  5. #5
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    78
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Avril 2004
    Messages : 78
    Points : 56
    Points
    56
    Par défaut
    En fait, lorsque j'accède à l'écran, mon detailsview est automatiquement en mode Insert. Je ne recharge donc nulle part le detailsview.

    J'utilise une sqlDataSource pour cet écran, je vais faire quelques tests avec un ObjectDataSource. Ce sera peut-être plus simple de récupérer le dernier enregistrement

  6. #6
    Membre confirmé
    Avatar de Dung-Tri
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 109
    Points : 597
    Points
    597
    Par défaut
    Ouais c'est bizarre. Envoie moi ton source, je jeterai un coup d'oeil si tu veux. C'est quand meme bizarre.
    T'es sur qu'il y a aucun DataBind() qui se ferai.

  7. #7
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    78
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Avril 2004
    Messages : 78
    Points : 56
    Points
    56
    Par défaut
    Bonjour Dung-Tri,

    Maintenant que tu le dis, il y a effectivement un databind sur le iteminserted.

    Je pense que je vais refaire cet écran ne serait-ce que pour utiliser des objectdatasources.


    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
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
    285
    286
    287
    288
    289
    290
    291
    292
    293
    294
    295
    296
    297
    298
    299
    300
    301
    302
    303
    304
    305
    306
    307
    308
    309
    310
    311
    312
    313
    314
    315
    316
    317
    318
    319
    320
    321
    322
    323
    324
    325
    326
    327
    328
    329
    330
    331
    332
    333
    334
    335
    336
    337
    338
    339
    340
    341
    342
    343
    344
    345
    346
    347
    348
    349
    350
    351
    352
    353
    354
    355
    356
    357
    358
    359
    360
    361
    362
    363
    364
    365
    366
    367
    368
    369
    370
    371
    372
    373
    374
    375
    376
    377
    378
    379
    380
    381
    382
    383
    384
    385
    386
    387
    388
    389
    390
    391
    392
    393
    394
    395
    396
    397
    398
    399
    400
    401
    402
    403
    404
    405
    406
    407
    408
    409
    410
    411
    412
    413
    414
    415
    416
    417
    <%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="NouveauClient.aspx.cs" Inherits="Ecrans_Gestion_de_la_boutique_NouveauClient" Title="Ajout d'un client" %>
     
    <asp:Content 
        ID="Content1" 
        ContentPlaceHolderID="Main" 
        Runat="Server">
     
       <div class="ModifClientDetailView">
             <asp:SqlDataSource ID="dsClient" runat="server" 
                ConnectionString="<%$ ConnectionStrings:GestionConnectionString %>" 
                DeleteCommand="DELETE FROM [T_CLIENT] WHERE [ID_CLIENT] = @ID_CLIENT" 
                InsertCommand="INSERT INTO [T_CLIENT] ([ID_BOUTIQUE], [Nom], [Prenom], [Civilite], [Adresse], [Complement], [CP], [Ville], [Pays], [Tel_Fixe], [Tel_Mobile], [Fax], [Autre_Tel], [Email], [Commentaire]) VALUES (@ID_BOUTIQUE, @Nom, @Prenom, @Civilite, @Adresse, @Complement, @CP, @Ville, @Pays, @Tel_Fixe, @Tel_Mobile, @Fax, @Autre_Tel, @Email, @Commentaire)" 
                SelectCommand="SELECT * FROM [T_CLIENT] INNER JOIN [T_BOUTIQUE] ON  [T_CLIENT].ID_Boutique=[T_BOUTIQUE].ID_Boutique " 
                UpdateCommand="UPDATE [T_CLIENT] SET [ID_BOUTIQUE] = @ID_BOUTIQUE, [Nom] = @Nom, [Prenom] = @Prenom, [Civilite] = @Civilite, [Adresse] = @Adresse, [Complement] = @Complement, [CP] = @CP, [Ville] = @Ville, [Pays] = @Pays, [Tel_Fixe] = @Tel_Fixe, [Tel_Mobile] = @Tel_Mobile, [Fax] = @Fax, [Autre_Tel] = @Autre_Tel, [Email] = @Email, [Commentaire] = @Commentaire WHERE [ID_CLIENT] = @ID_CLIENT">
                <DeleteParameters>
                    <asp:Parameter Name="ID_CLIENT" Type="Int32" />
                </DeleteParameters>
                <UpdateParameters>
                    <asp:Parameter Name="ID_BOUTIQUE" Type="Int32" />
                    <asp:Parameter Name="Nom" Type="String" />
                    <asp:Parameter Name="Prenom" Type="String" />
                    <asp:Parameter Name="Civilite" Type="String" />
                    <asp:Parameter Name="Adresse" Type="String" />
                    <asp:Parameter Name="Complement" Type="String" />
                    <asp:Parameter Name="CP" Type="Int32" />
                    <asp:Parameter Name="Ville" Type="String" />
                    <asp:Parameter Name="Pays" Type="String" />
                    <asp:Parameter Name="Tel_Fixe" Type="String" />
                    <asp:Parameter Name="Tel_Mobile" Type="String" />
                    <asp:Parameter Name="Fax" Type="String" />
                    <asp:Parameter Name="Autre_Tel" Type="String" />
                    <asp:Parameter Name="Email" Type="String" />
                    <asp:Parameter Name="Commentaire" Type="String" />
                    <asp:Parameter Name="ID_CLIENT" Type="Int32" />
                </UpdateParameters>
                <InsertParameters>
                    <asp:Parameter Name="ID_BOUTIQUE" Type="Int32" />
                    <asp:Parameter Name="Nom" Type="String" />
                    <asp:Parameter Name="Prenom" Type="String" />
                    <asp:Parameter Name="Civilite" Type="String" />
                    <asp:Parameter Name="Adresse" Type="String" />
                    <asp:Parameter Name="Complement" Type="String" />
                    <asp:Parameter Name="CP" Type="Int32" />
                    <asp:Parameter Name="Ville" Type="String" />
                    <asp:Parameter Name="Pays" Type="String" />
                    <asp:Parameter Name="Tel_Fixe" Type="String" />
                    <asp:Parameter Name="Tel_Mobile" Type="String" />
                    <asp:Parameter Name="Fax" Type="String" />
                    <asp:Parameter Name="Autre_Tel" Type="String" />
                    <asp:Parameter Name="Email" Type="String" />
                    <asp:Parameter Name="Commentaire" Type="String" />
                </InsertParameters>
            </asp:SqlDataSource>
     
     
        <!-- Configuration du DetailView !--> 
     
                    <!-- Configuration de la datasource pour les dropdownlist de type boutique !-->
                    <asp:SqlDataSource 
                        ID="dsBoutique" 
                        runat="server" 
                        ConnectionString="<%$ ConnectionStrings:GestionConnectionString %>" 
                        SelectCommand="SELECT [ID_BOUTIQUE], [M_Nom] FROM [T_BOUTIQUE]">
                    </asp:SqlDataSource>
     
     
                    <asp:DetailsView 
                        ID="ClientDetailsView" 
                        runat="server" 
                        AutoGenerateRows="False" 
                        DataKeyNames="ID_CLIENT" 
                        DataSourceID="dsClient" 
                        DefaultMode="Insert" 
                        oniteminserted="ClientDetailsView_ItemInserted" 
                        >
                    <PagerStyle Width="100px"></PagerStyle>
                        <Fields>
                            <asp:TemplateField 
                                HeaderText="Boutique:" 
                                SortExpression="ID_BOUTIQUE">
                                <EditItemTemplate>
                                    <asp:DropDownList 
                                        ID="DropDownListBoutique" 
                                        runat="server" 
                                        DataSourceID="dsBoutique" 
                                        DataTextField="M_Nom" 
                                        DataValueField="ID_BOUTIQUE" 
                                        SelectedValue='<%# Bind("ID_Boutique") %>'>
                                    </asp:DropDownList>
                                    <br />
                                </EditItemTemplate>
                                <InsertItemTemplate>
                                    <asp:DropDownList 
                                        ID="DropDownListBoutique2" 
                                        runat="server" 
                                        DataSourceID="dsBoutique" 
                                        DataTextField="M_Nom" 
                                        DataValueField="ID_BOUTIQUE" 
                                        SelectedValue='<%# Bind("ID_BOUTIQUE") %>'>
                                    </asp:DropDownList>
                                    <br />
                                </InsertItemTemplate>
                                <ItemTemplate>
                                    <asp:Label 
                                        ID="Label1" 
                                        runat="server" 
                                        Text='<%# Bind("M_NOM") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Civilité:" SortExpression="Civilite">
                                <EditItemTemplate>
                                      <asp:DropDownList 
                                        ID="DropDownListCivilite" 
                                        runat="server" 
                                        SelectedValue='<%# Bind("civilite") %>'>
                                        <asp:ListItem>M.</asp:ListItem>
                                        <asp:ListItem>Mme</asp:ListItem>
                                        <asp:ListItem>Mlle</asp:ListItem>
                                        <asp:ListItem>Me</asp:ListItem>
                                        <asp:ListItem>Dr</asp:ListItem>
                                    </asp:DropDownList>
                                    <br />
                                </EditItemTemplate>
                                <InsertItemTemplate>
                                    <asp:DropDownList 
                                        ID="DropDownListCivilite2" 
                                        runat="server" 
                                        SelectedValue='<%# Bind("Civilite") %>'>
                                        <asp:ListItem>M.</asp:ListItem>
                                        <asp:ListItem>Mme</asp:ListItem>
                                        <asp:ListItem>Mlle</asp:ListItem>
                                        <asp:ListItem>Dr</asp:ListItem>
                                        <asp:ListItem>Me</asp:ListItem>
                                    </asp:DropDownList>
                                    <br />
                                </InsertItemTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="Label2" runat="server" Text='<%# Bind("Civilite") %>'></asp:Label>
                                </ItemTemplate>
                                <HeaderStyle Width="100px" />
                            </asp:TemplateField>
                            <asp:BoundField 
                                DataField="Nom" 
                                HeaderText="Nom :" 
                                SortExpression="Nom" />
                            <asp:BoundField 
                                DataField="Prenom" 
                                HeaderText="Prénom :" 
                                SortExpression="Prenom" />
                            <asp:BoundField 
                                DataField="Adresse" 
                                HeaderText="Adresse:" 
                                SortExpression="Adresse" />
                            <asp:BoundField 
                                DataField="Complement" 
                                HeaderText="Complément:" 
                                SortExpression="Complement" />
                            <asp:BoundField 
                                DataField="CP" 
                                HeaderText="Code Postal:" 
                                SortExpression="CP" />
                            <asp:BoundField 
                                DataField="Ville" 
                                HeaderText="Ville:" 
                                SortExpression="Ville" />
                            <asp:BoundField 
                                DataField="Pays" 
                                HeaderText="Pays:" 
                                SortExpression="Pays" />
                            <asp:BoundField 
                                DataField="Tel_Fixe" 
                                HeaderText="Tél. Fixe:" 
                                SortExpression="Tel_Fixe" />
                            <asp:BoundField 
                                DataField="Tel_Mobile" 
                                HeaderText="Tél. Mobile:" 
                                SortExpression="Tel_Mobile" />
                            <asp:BoundField 
                                DataField="Fax" 
                                HeaderText="Télécopie:" 
                                SortExpression="Fax" />
                            <asp:BoundField 
                                DataField="Autre_Tel" 
                                HeaderText="Autre Tél.:" 
                                SortExpression="Autre_Tel" />
                            <asp:BoundField 
                                DataField="Email" 
                                HeaderText="Email" 
                                SortExpression="Email" />
                            <asp:BoundField 
                                DataField="Commentaire" 
                                HeaderText="Commentaire" 
                                SortExpression="Commentaire" />
                            <asp:TemplateField ShowHeader="False">
                                <EditItemTemplate>
     
                                    <asp:ImageButton 
                                        ID="ImageButtonValider" 
                                        runat="server" 
                                        CausesValidation="True" 
                                        CommandName="Update" 
                                        ImageUrl="~/App_Themes/Vert/Images/Validate.gif" 
                                        ToolTip="Valider la modification">
                                     </asp:ImageButton>
     
                                    &nbsp;|&nbsp;
     
                                    <asp:ImageButton 
                                        ID="ImageButtonAnnuler" 
                                        runat="server" 
                                        CausesValidation="False" 
                                        CommandName="Cancel" 
                                        ImageUrl="~/App_Themes/Vert/Images/Cancel.gif" 
                                        ToolTip="Annuler">
                                    </asp:ImageButton>
     
                                    &nbsp;|&nbsp;
     
                                    <asp:ImageButton 
                                        ID="ImageButtonAjouter" 
                                        runat="server"
                                        ImageUrl="~/App_Themes/Vert/Images/Add.gif" 
                                        ToolTip="Ajouter un animal" 
                                        onclick="ImageButtonAjouter_Click">
                                     </asp:ImageButton>
     
                                </EditItemTemplate>
     
                               <InsertItemTemplate>
     
                                    <asp:ImageButton 
                                        ID="ImageButtonAjoutClient" 
                                        runat="server" 
                                        CausesValidation="True" 
                                        CommandName="Insert" 
                                        ImageUrl="~/App_Themes/Vert/Images/Client_Add.gif" 
                                        ToolTip="Créer ce client">
                                     </asp:ImageButton>
     
                                   &nbsp;|&nbsp;
     
                                    <asp:ImageButton 
                                        ID="ImageButtonAnnuler2" 
                                        runat="server" 
                                        CausesValidation="False" 
                                        CommandName="Cancel" 
                                        ImageUrl="~/App_Themes/Vert/Images/Cancel.gif" 
                                        ToolTip="Annuler">
                                    </asp:ImageButton>
     
                               </InsertItemTemplate>
     
     
                                <ItemTemplate>
     
                                    <asp:ImageButton 
                                        ID="ImageButtonModifier" 
                                        runat="server" 
                                        CommandName="Edit" 
                                        ImageUrl="~/App_Themes/Vert/Images/Update.gif" 
                                        ToolTip="Modifier" />
     
                                    &nbsp;|&nbsp;
     
                                    <asp:ImageButton 
                                        ID="ImageButtonSupprimer" 
                                        runat="server" 
                                        CausesValidation="False" 
                                        CommandName="Delete" 
                                        ImageUrl="~/App_Themes/Vert/Images/Delete.gif" 
                                        ToolTip="Supprimer">
                                    </asp:ImageButton>
     
                                    &nbsp;|&nbsp;
     
                                    <asp:ImageButton 
                                        ID="ImageButtonAjouter2" 
                                        runat="server"
                                        ImageUrl="~/App_Themes/Vert/Images/Add.gif" 
                                        ToolTip="Ajouter un animal" 
                                        onclick="ImageButtonAjouter_Click">
                                     </asp:ImageButton>
                                </ItemTemplate>
                            </asp:TemplateField>
                        </Fields>
     
                <HeaderStyle Width="100px"></HeaderStyle>
                    </asp:DetailsView>                
                </ContentTemplate>
            </asp:UpdatePanel>
     
    </div>
     
    <div class="ModifClientAnimalList">        
            <asp:UpdatePanel ID="UpdatePanel3" runat="server">
                <ContentTemplate>
          <!-- Source de données du GridView !-->          
                <asp:SqlDataSource ID="dsAnimalList" runat="server" 
                    ConnectionString="<%$ ConnectionStrings:GestionConnectionString %>" 
                    SelectCommand="SELECT T_ANIMAL.ID_ANIMAL, T_ANIMAL.ID_CLIENT, T_ANIMAL.ID_TYPE_ANIMAL, T_ANIMAL.ID_RACE, T_ANIMAL.ID_TAILLE, T_ANIMAL.ID_LONGUEUR, T_ANIMAL.ID_COULEUR, T_ANIMAL.Nom, T_ANIMAL.Sexe, T_ANIMAL.Date_Naissance, T_ANIMAL.Type_Identification, T_ANIMAL.Identification, T_ANIMAL.Commentaire, T_RACE.Race, T_COULEUR.Couleur, T_LONGUEUR.Longueur, T_TAILLE.Taille, T_TYPE_ANIMAL.Type FROM T_ANIMAL INNER JOIN T_TYPE_ANIMAL ON T_ANIMAL.ID_TYPE_ANIMAL = T_TYPE_ANIMAL.ID_TYPE_ANIMAL LEFT OUTER JOIN T_COULEUR ON T_ANIMAL.ID_COULEUR = T_COULEUR.ID_COULEUR LEFT OUTER JOIN T_RACE ON T_TYPE_ANIMAL.ID_TYPE_ANIMAL = T_RACE.ID_TYPE_ANIMAL AND T_ANIMAL.ID_RACE = T_RACE.ID_RACE LEFT OUTER JOIN T_TAILLE ON T_ANIMAL.ID_TAILLE = T_TAILLE.ID_TAILLE LEFT OUTER JOIN T_LONGUEUR ON T_ANIMAL.ID_LONGUEUR = T_LONGUEUR.ID_LONGUEUR WHERE (T_ANIMAL.ID_CLIENT = @ID_CLIENT)"
                    DeleteCommand="DELETE FROM [T_ANIMAL] WHERE [ID_ANIMAL] = @ID_ANIMAL">
                    <SelectParameters>
                        <asp:ControlParameter ControlID="ClientDetailsView" Name="ID_CLIENT" 
                                PropertyName="SelectedValue" Type="Int32" />
                    </SelectParameters>
                </asp:SqlDataSource>
     
            <!-- Configuration du GridView contenant la liste des animaux!-->               
     
                <asp:GridView 
                    ID="GridViewAnimalList" 
                    DataKeyNames="ID_ANIMAL" 
                    DataSourceID="dsAnimalList"
                    runat="server" 
                    AutoGenerateColumns="False" 
                    AllowSorting="True" 
                    EnableTheming="True" 
                    BackColor="White" 
                    BorderColor="White" 
                    BorderStyle="Solid" 
                    BorderWidth="2px" 
                    CellPadding="3"
                    width="1027px" >
                    <FooterStyle 
                        BackColor="#B5C7DE" 
                        ForeColor="#4A3C8C" />
                    <RowStyle 
                        BackColor="#E7E7FF" 
                        ForeColor="#4A3C8C"
                        Font-Size="Small"
                        CssClass="RowStyle" HorizontalAlign="Center" />
                    <Columns>
                        <asp:TemplateField ShowHeader="False">
                            <ItemTemplate>
                                <asp:LinkButton 
                                    ID="LinkButton1" 
                                    runat="server" 
                                    CausesValidation="False" 
                                    CommandName="Select" 
                                    Text="Sélectionner" 
                                    onclick="LinkButton1_Click">
                                </asp:LinkButton>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:BoundField DataField="Nom" HeaderText="Nom" SortExpression="Nom" />
                        <asp:BoundField DataField="Sexe" HeaderText="Sexe" SortExpression="Sexe" />
                        <asp:TemplateField HeaderText="Type d'animal" SortExpression="ID_TYPE_ANIMAL">
                            <EditItemTemplate>
                                <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("ID_TYPE_ANIMAL") %>'></asp:TextBox>
                            </EditItemTemplate>
                            <ItemTemplate>
                                <asp:Label ID="Label1" runat="server" Text='<%# Bind("TYPE") %>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:BoundField DataField="Race" HeaderText="Race" SortExpression="Race" />
                        <asp:TemplateField HeaderText="Taille" SortExpression="ID_TAILLE">
                            <EditItemTemplate>
                                <asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("ID_TAILLE") %>'></asp:TextBox>
                            </EditItemTemplate>
                            <ItemTemplate>
                                <asp:Label ID="Label2" runat="server" Text='<%# Bind("TAILLE") %>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:TemplateField HeaderText="Longueur" SortExpression="ID_LONGUEUR">
                            <EditItemTemplate>
                                <asp:TextBox ID="TextBox3" runat="server" Text='<%# Bind("ID_LONGUEUR") %>'></asp:TextBox>
                            </EditItemTemplate>
                            <ItemTemplate>
                                <asp:Label ID="Label3" runat="server" Text='<%# Bind("LONGUEUR") %>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:TemplateField HeaderText="Couleur" SortExpression="ID_COULEUR">
                            <EditItemTemplate>
                                <asp:TextBox ID="TextBox4" runat="server" Text='<%# Bind("ID_COULEUR") %>'></asp:TextBox>
                            </EditItemTemplate>
                            <ItemTemplate>
                                <asp:Label ID="Label4" runat="server" Text='<%# Bind("COULEUR") %>'></asp:Label>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:BoundField DataField="Date_Naissance" HeaderText="Date de naissance" 
                            SortExpression="Date_Naissance" />
                        <asp:BoundField DataField="Type_Identification" 
                            HeaderText="Type d'identification" SortExpression="Type_Identification" />
                        <asp:BoundField DataField="Identification" HeaderText="Identification" 
                            SortExpression="Identification" />
                        <asp:BoundField DataField="Commentaire" HeaderText="Commentaire" 
                            SortExpression="Commentaire" />
                        <asp:CommandField ShowDeleteButton="True" />
                    </Columns>
                    <PagerStyle 
                        CssClass="PagerStyle" 
                        BackColor="#E7E7FF" 
                        ForeColor="#4A3C8C" 
                        HorizontalAlign="Right" 
                        Font-Size="Smaller" />
                    <SelectedRowStyle 
                        BackColor="#738A9C" 
                        Font-Bold="True"  
                        Font-Size="Small"
                        CssClass="SelectedRowStyle" />
                    <HeaderStyle 
                        CssClass="HeaderStyle" 
                        BackColor="#4A3C8C" 
                        Font-Bold="True" 
                        ForeColor="#F7F7F7"   
                        Font-Size="Small" />
                    <AlternatingRowStyle 
                        BackColor="#F7F7F7"
                        Font-Size="Small"
                        CssClass="AlternatingRowStyle" />
                </asp:GridView>            
                </ContentTemplate>
            </asp:UpdatePanel>
     
    </div>  
     
    </asp:Content>
    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
    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;
     
    public partial class Ecrans_Gestion_de_la_boutique_NouveauClient : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
     
        }
     
        protected void ClientDetailsView_ItemInserted(object sender, DetailsViewInsertedEventArgs e)
        {
            ClientDetailsView.ChangeMode(DetailsViewMode.ReadOnly);
            ClientDetailsView.DataBind();
     
        }
     
     
        //Après avoir modifié le détail d'un animal, le gridview est mis à jour et le DetailsViewAnimal 
        //courant est masqué
        protected void DetailsViewAnimal_ItemUpdated(object sender, DetailsViewUpdatedEventArgs e)
        {
            GridViewAnimalList.DataBind();
            DetailsViewAnimal.Visible = false;
        }
     
        //La sélection d'un animal provoque l'affichage du DetailsViewAnimal
        protected void LinkButton1_Click(object sender, EventArgs e)
        {
            DetailsViewAnimal.Visible = true;
        }
     
        //Le bouton modifier masque le DetailsViewAnimal
        protected void LinkButton2_Click(object sender, EventArgs e)
        {
            DetailsViewAnimal.Visible = false;
        }
     
        //Le bouton Ajouter un animal du DetailsViewClient affiche le DetailsViewAnimal en mode insertion
        protected void LinkButtonAjoutAnimal_Click(object sender, EventArgs e)
        {
            DetailsViewAnimal.ChangeMode(DetailsViewMode.Insert);
            DetailsViewAnimal.Visible = true;
        }
     
        protected void DetailsViewAnimal_ItemInserted(object sender, DetailsViewInsertedEventArgs e)
        {
            GridViewAnimalList.DataBind();
        }
     
        protected void ImageButtonAjouter_Click(object sender, ImageClickEventArgs e)
        {
            DetailsViewAnimal.ChangeMode(DetailsViewMode.Insert);
            DetailsViewAnimal.Visible = true;
        }
     
    }

  8. #8
    Membre confirmé
    Avatar de Dung-Tri
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 109
    Points : 597
    Points
    597
    Par défaut
    Ya des erreurs dans ta page aspx.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
                <HeaderStyle Width="100px"></HeaderStyle>
                    </asp:DetailsView>                
                </ContentTemplate><--
            </asp:UpdatePanel><-- ou est l'update Panel avec son ContentTemplate???

  9. #9
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    78
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Avril 2004
    Messages : 78
    Points : 56
    Points
    56
    Par défaut
    L'update panel est dans le master, comme ça je n'ai pas besoin d'en faire un sur chaque page.

  10. #10
    Membre confirmé
    Avatar de Dung-Tri
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 109
    Points : 597
    Points
    597
    Par défaut Autre chose à faire
    J’ai encore du mal a lancer ton projet. J’utilise pas de SQL SERVER EXPRESS comme toi. J’ai un serveur SQL Server. Mais lorsque je vais en modif client ca utilise une autre base.

    Tu devrais affecter tes sources de donnée dans le Page_Load et pas directement en mode design via le DataSourceID car on s’y retrouve plus. On peut pas savoir quelle control rencontre un problème de chargement.

    Fait comme suit :


    Affecte des instances aux ObjectDataSource ou SqlDataSource via la propriété DataSource de tes controles qui consomme comme le DetailView.
    Vide tes DataSourceId pour éviter la double configuration.
    Enfin charge les données via la méthode DataBind() sur tes DataGridView, DetailView… tous ce qui consomme.

    Tu verras c’est plus clair.

    Cdt/

  11. #11
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    78
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Avril 2004
    Messages : 78
    Points : 56
    Points
    56
    Par défaut
    La base est dans les sources que je t'ai envoyé mais il faut que sql server 2005 soit installé (j'ai mis la version express).

    Pour les datasource, je ne suis pas sûr de bien comprendre, tu veux dire qu'au lieu d'avoir

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <asp:DetailsView 
                        ID="ClientDetailsView" 
                        runat="server" 
                        AutoGenerateRows="False" 
                        DataKeyNames="ID_CLIENT" 
                        DataSourceID="dsClient" 
                        DefaultMode="Insert" 
                        oniteminserted="ClientDetailsView_ItemInserted" 
                        >
    Il faudrait que je mette

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <asp:DetailsView 
                        ID="ClientDetailsView" 
                        runat="server" 
                        AutoGenerateRows="False" 
                        DataKeyNames="ID_CLIENT" 
                        DataSource="dsClient" 
                        DefaultMode="Insert" 
                        oniteminserted="ClientDetailsView_ItemInserted" 
                        >
    avec dans le 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
    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;
    
    public partial class Ecrans_Gestion_de_la_boutique_NouveauClient : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            ClientDetailsView.DataBind();
        }
    Je suis désolé si je fais neuneu, mais je n'ai pas de base élémentaires de codage en aspnet.

    Merci

  12. #12
    Membre confirmé
    Avatar de Dung-Tri
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 109
    Points : 597
    Points
    597
    Par défaut
    Plutot comme ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                 ClientDetailsView.DataSource = dsClient;
                 ClientDetailsView.DataBind();
            }
        }
    Et tu supprime dsClient sur DataSourceId.^^

  13. #13
    Membre du Club
    Inscrit en
    Avril 2004
    Messages
    78
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Avril 2004
    Messages : 78
    Points : 56
    Points
    56
    Par défaut
    OK, j'essaierai de faire comme ça. ça permet d'alléger les pages au chargement?

    Et pour le sujet du topic, tu as une idée?

Discussions similaires

  1. [CSS 3] Comment passer en mode ligne ?
    Par Mck698 dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 21/05/2012, 23h05
  2. Comment passer en mode déboguage ?
    Par Fngonka dans le forum ASP.NET
    Réponses: 8
    Dernier message: 28/05/2010, 14h10
  3. Réponses: 3
    Dernier message: 15/02/2008, 11h05
  4. Probleme de mode insertion / edition
    Par Chimere dans le forum Bases de données
    Réponses: 9
    Dernier message: 02/09/2006, 17h45
  5. Comment passer en mode édition dans un TTreeView ?
    Par Invité dans le forum C++Builder
    Réponses: 6
    Dernier message: 08/08/2005, 13h37

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