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 :

row click pour gridview


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 30
    Par défaut row click pour gridview
    Bonjour, un sujet "classique"
    mais qui néanmoins me pose des problèmes

    je cherche à pouvoir cliquer sur une ligne d'un gridview, et que ça lance une fonction code behind

    le but étant lors d'un clic sur un ligne, de construire des textbo qui contiendrait les données de la ligne selectionnée, bref, il s'agit de faire un edit dynamique pour se passer du "autogenerateeditbutton = true"

    avec les recherches faites, j'arrive bien à rendre cliquable la ligne
    il s'agit de placer ce bout de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    e.Row.Attributes["OnClick"] = ClientScript.GetPostBackEventReference(this, "Select$" + e.Row.RowIndex);
    soit en override dans le render de la page
    soit dans le rowdatabound ou rowcreated du gridview

    la question peut sembler légère, mais... je n'arrive pas à utiliser ce code pour exécuter du code behind
    il s'agit de faire comme s'il y avait un bouton "select" et l'event "SelectedIndexChanged"

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 30
    Par défaut
    hum autant pour moi

    la solution est bien d'override la méthode render

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
        protected override void Render(HtmlTextWriter writer)
        {
            foreach (GridViewRow gvr in MonGridView.Rows)
            {
                if (gvr.RowType == DataControlRowType.DataRow)
                {
                    gvr.Attributes["OnClick"] = ClientScript.GetPostBackEventReference(MonGridView, "Select$" + gvr.RowIndex, true);
                    gvr.Style["cursor"] = "hand";
                }
            }
            base.Render(writer);
        }
    et cela declenche bien l'event SelectedIndexChanged dans lequel on peut mettre du code

  3. #3
    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
    Normalement tu pourrais mettre directement ton code dans le SelectedindexChanged, je ne vois pas pourquoi il faut overrider la méthode render, sauf peut etre si tu ne veux pas voir le bouton "Sélectionner"

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

Discussions similaires

  1. conseils: méthode pour gridview triable en DB
    Par cortex024 dans le forum ASP.NET
    Réponses: 0
    Dernier message: 27/08/2007, 10h52
  2. probleme sur la suppression de rows d'une gridview
    Par kazoumoulox dans le forum ASP.NET
    Réponses: 2
    Dernier message: 19/06/2007, 10h38
  3. Signal Click pour une image
    Par Jielde dans le forum GTK+ avec C & C++
    Réponses: 2
    Dernier message: 07/06/2007, 11h27
  4. [C#] Double click pour agrandir la fenêtre... Problème
    Par Radium133 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 17/01/2006, 17h41
  5. double click pour soumission de formulaires
    Par pram dans le forum XMLRAD
    Réponses: 2
    Dernier message: 16/11/2005, 12h32

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