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 inside gridview


Sujet :

ASP.NET

  1. #1
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut gridview inside gridview
    Bonjour,

    Un petit problème :
    inserer un gridview dans un gridview et manipuler sa proprieté "visible"

    Lorsque j'appelle la ligne du gridview et que je veux la modifier (mode edit), je voudrais que mon second grid view inseré dans un template (editetemplate)de la colonne concernée puisse apparaître en visible =true suite à l'évenement dun buttonimage positionné en mode visible=true dans le même template.
    au départ dans le code html :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GridViewCP.Visible = false;
    *j'ai essayé dans le GridDisp_RowDataBound du premier gridview

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GridViewCP = (GridView)e.Row.FindControl("GridViewCP");
    en déclarant en static la variable.

    puis sur l'évenement du bouton

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    protected void ImageButtonville_Click(object sender, ImageClickEventArgs e)
        {         
            GridViewCP.Visible = true;
     
     
        }
    le gridview n'apparait pas.


    *j'ai essayé sur le render du second gridview (GridViewCP.)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    GridViewcp_PreRender(object sender, EventArgs e)
     
           { 
     
    en déclarant en static 
    GridViewCP = (GridView)sender;
     
    }
    et en utilisant l'événement du boutton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    protected void ImageButtonville_Click(object sender, ImageClickEventArgs e)
        {         
            GridViewCP.Visible = true;
     
     
        }
    Il n'apparait toujours pas


    merci de votre aide

  2. #2
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Salut,

    Est-ce que tu as essayé de le faire avec le mode design de la page dans Visual Studio?

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  3. #3
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut re
    En mode design lorsque je me positionne sur le template concerné je vois le deuxième gridview?

    en clair:

    je n'arrive pas à rendre visible par le code un gridview dans un gridview qui serait non visible .

    GridViewCP inséré en mode non visible dans le GridDisp.(dans un edittemplate)

    Avec un boutton image dans la même colonne déclanchant un évenement qui rendrait visible GridViewCP.

    (Sachant bien entendu si j'utilise le cas 2 que pour utiliser le prerender il faut que le GridViewCP soit rendu visible pendant cet évènement.)
    nota : en debuguant, la propriété visible est bien changée mais pas sur le rendu.

    Merci

  4. #4
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut
    Euh, je n'ai pas tout compris à ton truc.

    Mais afficher un gridview dans un gridview qui est invisible n'est pas possible, si le père est invisible, le fils aussi!

  5. #5
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut
    Désolé j'essaye d'être plus claire.

    Le grid view parent (GridDisp - visible=true) possède dans une colonne un grid view enfant (GridViewCP -visible=false) .


    Lors d'une modification de la ligne du grid view parent ( mode edition) apparait sur la colonne concernée un boutton .Lorsque l'on clique sur ce boutton je voudrais qu'apparaisse le gridview enfant. (GridViewCP visible=true)

    Bien qu'en débogant le propriété visible est true mais il n'ya pas de rendu.

    le gridview enfant n'apparaît pas

  6. #6
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut
    est ce que la colonne où est le fils est visible?

    est ce qu'il n'y a aucune ligne de code qui remet ton fils à visible=false?

  7. #7
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut
    oui la colonne du gridview parent ou se situe le gridview fils est visible.

    non aucune autre ligne de code ne remet l'objet non visible.

  8. #8
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    Il y a plusieurs modèles selon qu'on est en mode "item", "edit", ... Dans chacun des cas tu peux préciser les controles à ajouter.
    "Winter is coming" (ma nouvelle page d'accueil)

  9. #9
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut
    Bien sûre lorsque je modifie la ligne je suis en <EditItemTemplate> .
    mon second grid view est bien présent mais le code serveur ne me permet pas de faire disparaitre et apparaître en mode visible ce second grid view enfant.

    pourtant lorsque j'appelle sa référence (par findcontrol ou (GridView)sender dans un pre render) sa propriété visible est bien modifiée.


    Help me!!

  10. #10
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut
    Je pense qu'il ne peut pas rafraichir la ligne en mode edit.

    Donc comment faire pour afficher dans un gridview en mode edition les modifications entrainées par du code sur les controles de la ligne (contrôle crée au niveau d'une colonne dans un edittemplate)

    Donc comment faire un refresh de la ligne sans quitter le mode edition.

  11. #11
    Membre averti
    Inscrit en
    Juin 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 14
    Par défaut
    J'ai trouvé

    Il ne faut pas declarer l'objet en public mais le re-declarer à chaque evenement par findcontrol

    Merci

  12. #12
    Expert confirmé
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Par défaut
    La méthode FindControl est utile pour les controles générés dynamiquement. Or là ce n'est pas le cas. Tu devrais pouvoir y accéder par son identifiant.
    "Winter is coming" (ma nouvelle page d'accueil)

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 09/06/2011, 08h28
  2. gridview inside gridview
    Par ahmedmido dans le forum ASP.NET
    Réponses: 2
    Dernier message: 12/09/2008, 15h11
  3. [VB.Net][2.0]Événement du ButtonField dans un GridView
    Par steelidol dans le forum ASP.NET
    Réponses: 3
    Dernier message: 05/10/2005, 19h23
  4. [C#] GridView et colonne URL clickable
    Par MaxiMax dans le forum ASP.NET
    Réponses: 4
    Dernier message: 24/08/2005, 09h55
  5. Réponses: 2
    Dernier message: 06/07/2005, 16h19

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