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 :

Probleme récupération dataItem DataGrid View


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Novembre 2006
    Messages : 131
    Par défaut Probleme récupération dataItem DataGrid View
    Bonjour,

    Ma problématique est simple : je souhaiterai manipuler les données chargées dans mon DataGridview. Pour se faire, je veux utiliser un conteneur métier qui gère une collection fortement typée.
    Pour ce qui est de l'affichage des données dans mon DataGridView, je n'ai aucun probleme.
    C'est des que je souhaite récupérer une instance via la propriété DataItem que j'obtiens toujours la valeur null.

    Voici le code de ma page aspx:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
        <h2>Adminstration des clients</h2>
        <asp:GridView ID="GdwClients" runat="server" AutoGenerateColumns="False"
            DataKeyNames="ID">
            <Columns>
                <asp:CommandField ShowDeleteButton="True" />
                <asp:BoundField DataField="ID" ReadOnly="True" />
                <asp:BoundField DataField="Nom" />
            </Columns>
        </asp:GridView>
    Et 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
    15
    16
    17
    18
    19
    20
    21
     
    public partial class Pages_Admin_Clients : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            GdwClients.DataSource = BusinessFactory.ClientManager.List();
            GdwClients.DataBind();
        }
     
        private void GdwClientsRowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            var client = (Client)GdwClients.Rows[e.RowIndex].DataItem;
            BusinessFactory.ClientManager.Delete(client);
        }
     
        protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            GdwClients.RowDeleting += new GridViewDeleteEventHandler(GdwClientsRowDeleting);
        }
    }
    Dans mon cas c'est le code GdwClients.Rows[e.RowIndex].DataItem qui renvoie toujours null... Pourquoi?

  2. #2
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Par défaut
    Je n'en retrouve pas l'explication mais, de mémoire, le DataItem est toujours null dans les opérations d'ajout, modification ou de suppression d'un data Control.

    Il n'est utilisable qu'au binding dudit contrôle.

    Pour arriver à tes fins, récupère l'id de ton objet via la datakey de ta row ou dans la cellule dans laquelle tu l'as stocké.
    Recherche cet id dans la liste d'objets que tu as utilisé pour binder ta grid et supprime l'en.

  3. #3
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Novembre 2006
    Messages : 131
    Par défaut
    Tres bien, merci pour cette information.
    Utiliser le DataKey était ma deuxième idée et celle que je vais finalement retenir
    Merci a toi.

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

Discussions similaires

  1. Probléme de récupération de données dans un DataGrid View
    Par lisounett dans le forum Windows Forms
    Réponses: 4
    Dernier message: 07/07/2009, 15h13
  2. probleme récupération donnée dans script xsl
    Par jmacdev dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 12/05/2006, 17h37
  3. [VB6][Objet OLE] probleme récupération texte
    Par dedella_al dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 20/10/2005, 19h54
  4. [VB.NET] Problème checkBox et datagrid
    Par jagdjg dans le forum ASP.NET
    Réponses: 5
    Dernier message: 23/04/2004, 08h53
  5. [PointBase][Probleme] Récupération de ligne
    Par cibouseb dans le forum Autres SGBD
    Réponses: 7
    Dernier message: 28/07/2003, 14h51

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