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 :

GridView - redirection avec paramètre


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
    Avril 2009
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 67
    Par défaut GridView - redirection avec paramètre
    Bonjour

    Je suis en train de développer une interface d'administration gérant des utilisateurs (entre autre). On pourra donc supprimer, ajouter et modifier des utilisateurs.
    Ma base de données Utilisateur est très complexe (beaucoup de colonnes), j'en affiche une partie dans mon GridView et permet donc de modifier quelques informations.
    Je ne peux pas les mettre toutes (ça prend trop de place, ce serait pas pratique), donc, j'aimerais mettre un autre bouton (en plus de celui de modification et de suppression) qui serait un bouton "Modification avancée" et qui permettrait de tout modifier en redirigeant l'administrateur vers une autre page qui gère la modification.
    J'ai réussi à intégrer le bouton de le GridView donc il suffit de changer le PostBackUrl et le tour est (presque) joué.

    Mon problème : je ne sais pas comment récupérer l'identifiant de l'utilisateur associé au bouton sur lequel on clique.
    Je pensais pouvoir faire : PostBackUrl="page.aspx?id=@idUtil" mais là, le paramètre vaut la chaine "@idUtil".

    Voici le code grandement simplifié de la partie concernée, les points représentent la simplification (pas la peine de mettre la balise Columns ^^) pour éviter que ce soit trop lourd :
    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
     
    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
    DataKeyNames="idUtil" DataSourceID="SqlDataSource1">
    ................
         <asp:BoundField DataField="idUtil" HeaderText="Identifiant" 
    ReadOnly="True" SortExpression="idUtil" />
    ................
         <asp:TemplateField HeaderText="Modification avancée" ShowHeader="False" 
    SortExpression="idUtil">
            <ItemTemplate>
               <asp:Button ID="BP_ModifAv" runat="server" 
    CausesValidation="False" CommandName="Modif" Text="Modifier en détails 
    l'utilisateur" PostBackUrl="modif_util.aspx?id=..."/>
            </ItemTemplate>
         </asp:TemplateField>
    ...............
    </asp:GridView>
    Tout ce que je voudrais c'est ajouter l'identifiant de l'utilisateur en cours dans le PostBackUrl mais si vous avez d'autres idées qui permettre à peu près la même chose, je suis preneur.

    Je vous remercie par avance de vous pencher sur mon problème =)

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 298
    Par défaut
    Tu fait

    ="modif_util.aspx?id={0}"

    Et du définit DataKeyName='Pseudo'...


    Voili voilou

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

    Informations forums :
    Inscription : Avril 2009
    Messages : 67
    Par défaut
    Citation Envoyé par p_mehdi Voir le message
    Tu fait

    ="modif_util.aspx?id={0}"

    Et du définit DataKeyName='Pseudo'...
    Je te remercie beaucoup de ton aide mais ça ne marche pas
    dans la page modif_util, id vaut la chaine "{0}"

    le ="modif_util.aspx?id={0}" il faut bien le mettre dans PostBackUrl ?
    et il faut mettre DataKeyNames='idUtil' dans le gridView ? c'est bien ça ?

    si c'est bien ce qu'il faut faire, ça ne marche pas
    si ce n'est pas ça, tu pourrais être plus précis stp

    Merci p_mehdi d'essayer de m'aider

    si quelqu'un d'autre a des idées, n'hésitez pas ^^

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 298
    Par défaut
    J'avais pas vu ton code jusqu'au bout...

    En fait soit tu passes par un hyperlinkfield.

    ou tu remplis la zone DataNavigateUrlFormatString="~/modif_util.aspx?id={0}"
    et DataNavigateUrlFields="Pseudo" , Pseudo doit être dans ton Datakeyname au niveau du gridview..

    Soit tu fais un bouton et dans ce cas tu captes l'évennement Onclick et tu fais un redirect.

    Après il y a sûrement d'autres solutions...

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

    Informations forums :
    Inscription : Avril 2009
    Messages : 67
    Par défaut
    Merci énormément p_mehdi !!!!

    Grâce à ce que t'as dit (et en farfouillant un peu) j'ai trouvé comment le faire exactement comme il fallait =)

    si ça intéresse certains, voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <asp:TemplateField HeaderText="Modification avancée" ShowHeader="False" 
    SortExpression="idUtil">
         <ItemTemplate>
            <asp:Button ID="BP_ModifAv" runat="server" CausesValidation="False"
             CommandName="Modif" Text="Modifier en détails l'utilisateur"
             PostBackUrl='<%# Eval("idUtil", "~/modif_util.aspx?id={0}") %>'/>
         </ItemTemplate>
    </asp:TemplateField>
    Merci encore p_mehdi, tu m'as sauvé la vie

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 298
    Par défaut
    N'exagérons rien mais au moins ca fait plaisir de voir quelqu'un de content...

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

Discussions similaires

  1. Aide urlrewriting / redirection avec paramètres
    Par loloing dans le forum Apache
    Réponses: 1
    Dernier message: 18/01/2009, 14h22
  2. redirection avec paramètre
    Par mademoizel dans le forum ASP
    Réponses: 2
    Dernier message: 14/01/2008, 22h19
  3. Redirection avec paramètre (GET)
    Par gufra dans le forum JSF
    Réponses: 4
    Dernier message: 06/11/2007, 15h10
  4. Redirection avec paramètres pour la vue
    Par sir_gcc dans le forum Zend Framework
    Réponses: 2
    Dernier message: 16/10/2007, 21h12
  5. [Struts]Redirection avec paramètre
    Par klereth dans le forum Struts 1
    Réponses: 2
    Dernier message: 29/06/2005, 10h56

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