Question : Problème niché d'événement de Gridviews RowDataBound

Bonjour, mon problème est avec les gridviews nichés. j'ai un gridview (nom « GrdMain ») et encore (appelé « GridSub ») est à l'intérieur de celui le champ du calibre des gridview ! je ne peux pas atteindre les variables de GridSub ! J'ai essayé d'atteindre l'événement de RowDataBound de GridSub mais quand j'appelle après DataBind () ; il ne met pas le feu, quand j'appelle le befor qu'il met le feu avec l'en-tête (pas type du dataRow) ! je ne sais pas ose je le fixe. le

Here est mon code d'échantillon. Je veux atteindre le lien hypertexte pour rendre sa police "BOLD" ! le

Please ignorent les noms de la grille. au-dessus de moi ai juste donné un exemple pour les noms ! Class= " lineNumbers " >
1 de >

: 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 : >
                                    
                                        
                                            
                                                
  • '>
  • class= " de
    1 de >


    de class= : 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 : gridMain_RowDataBound vide >protected " de
    a.MotherPageID.ToString ()) .ToList () ;
    // ** quand là il le feu avec l'en-tête pas aiment DataRow
                    Grd.DataBind () ;
    // quand là il ne met pas le feu ! *******
                    Grd.RowDataBound += nouveau GridViewRowEventHandler (Grd_RowDataBound) ;
                    pnlMy.Visible = rectifient ;
                    si (== 0 de Grd.Rows.Count)
                    {
                        pnlMy.Visible = faux ;
                    }
                    autrement
                    {
                        
                       //sth.
                    }
                  
                }
            }
    //this est rowdatabound de gridsub
    Grd_RowDataBound vide (expéditeur d'objet, GridViewRowEventArgs e)
            {
                si (== DataControlRowType.DataRow d'e.Row.RowType)
                {
                    Marquer le lblB = (étiquette) e.Row.FindControl (« lblGizli ») ;
                    Lien hypertexte hlMy = (lien hypertexte) e.Row.FindControl (« hlSub ») ;
                    si (== hfSayfaID.Value de lblB.Text)
                    {
                        hlMy.Font.Bold = rectifient ;
                    }
                }
            }
    class= > " clair " de 
    class= de

    Réponse : Problème niché d'événement de Gridviews RowDataBound

    Il simple.
    Quel u peut faire est sur la première vue de grille créent son événement de databound de rangée.
    cet u savent.
    Maintenant pour le gridview à l'intérieur de la vue principale de grille vous devez manuellement dactylographier l'événement de Rowdatabound d'ur pour le gridview secondaire. et il mettra le feu à l'événement secondaire d'onrowdatbound de vue de grille d'ur et vous pouvez accéder à ces variables à l'intérieur de gridview secondaire avec le même accès de la manière u dans la vue principale de grille.

    Un certain exemple :

                    onrowdatabound= " gdProject_RowDataBound " Width= " 100% " >
               
                   
                       

                           

                           

                             

                           


                   

                   

                   




    EN code derrière :

    Page_Load vide protégé (expéditeur d'objet, EventArgs e)
    {
    gdProject.DataBind () ;
    }

    gdProject_RowDataBound vide protégé (expéditeur d'objet, GridViewRowEventArgs e)
    {
            Gd de GridView = nouveau GridView () ;
            lblPID d'étiquette = nouvelle étiquette () ;

            gd = (GridView) e.Row.FindControl (« gdTodoList ») ;
            lblPID = (étiquette) e.Row.FindControl (« PID ») ;

    si (gd ! = nulle)
            {
    ......
     gd.DataBind () ;
    }
    }


    gdTodoList_RowDataBound vide protégé (expéditeur d'objet, GridViewRowEventArgs e)
        {
    lblTID d'étiquette = nouvelle étiquette () ;
    lblTID = (étiquette) e.Row.FindControl (« tid ») ;
    }
    Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us