J'utilise GridViews assez souvent et parfois je suis confus à l'endroit où mettre un certain code. Quelle est la séquence dans laquelle les événements sont déclenchés, y compris tous les événements de page? J'essaie vraiment de comprendre ce qui se passe entre la page et le Gridview. Est-ce que les événements se croisent? Ou est-ce que tous les événements de page se produisent à la fois, alors tous les événements Gridview se produisent? Et pas seulement GridViews, aucun contrôle - mais surtout la page et l'interaction GridView.Quelle est la séquence d'événements qui se déclenche dans le contrôle Gridview d'asp.net?
Répondre
protected void GridView1_Load(object sender, EventArgs e)
{
System.Diagnostics.Debug.WriteLine("GridView1_Load");
}
protected void GridView1_DataBinding(object sender, EventArgs e)
{
System.Diagnostics.Debug.WriteLine("GridView1_DataBinding");
}
protected void GridView1_DataBound(object sender, EventArgs e)
{
System.Diagnostics.Debug.WriteLine("GridView1_DataBound");
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
System.Diagnostics.Debug.WriteLine("GridView1_RowDataBound");
}
Cela sera utile pour les autres classes que vous rencontrerez. Le faire de cette façon est la seule façon que vous pouvez être sûr que les événements se déclenchent. Microsoft - peut-il le dire - mais comment le SAVIEZ-VOUS à coup sûr? lol – Ropstah
http://msdn.microsoft.com/en-us/library/ms993231.aspx
Gridview événements de contrôle
Si vous êtes à la page se référant du cycle de vie, vous pouvez trouver un aperçu here.
Résumé du cycle de vie est:
page Demande
La demande de page se produit avant que le cycle de vie de la page commence. Lorsque la page est demandée par un utilisateur, ASP.NET détermine si la page doit être analysée et compilée (commençant ainsi la vie d'une page), ou si une version mise en cache de la page peut être envoyée en réponse sans exécuter la page.
Début
Dans l'étape de démarrage, propriétés de la page telles que demande et la réponse sont réglées. À ce stade, la page détermine également si la requête est une publication ou une nouvelle demande et définit la propriété IsPostBack. En outre, au cours de l'étape de démarrage, la propriété UICulture de la page est définie.
page initialisation
Lors de l'initialisation de la page, les contrôles sur la page sont disponibles et la propriété UniqueID de chaque commande est réglé. Tous les thèmes sont également appliqués à la page. Si la demande en cours est une publication, les données de publication n'ont pas encore été chargées et les valeurs de propriété de contrôle n'ont pas été restaurées sur les valeurs de l'état d'affichage.
Charge
Au cours de la charge, si la demande actuelle est une publication, les propriétés de contrôle sont chargés avec des informations récupérées à partir de l'état d'affichage et du contrôle étatique.
Validation
Lors de la validation, la méthode Validation de tous les contrôles de validateur est appelée, qui définit la propriété IsValid des contrôles individuels validateur et de la page.
événement Postback manipulation
Si la demande est une publication, les gestionnaires d'événements sont appelés.
rendu
Avant de rendre, l'état d'affichage est enregistré pour la page et tous les contrôles. Pendant la phase de rendu, la page appelle la méthode Render pour chaque contrôle, fournissant un éditeur de texte qui écrit sa sortie dans le OutputStream de la propriété Response de la page.
Décharger
Décharger est appelée après que la page a été entièrement rendu, envoyé au client, et est prêt à être mis au rebut. À ce stade, les propriétés de page telles que Response et Request sont déchargées et tout nettoyage est effectué. Comme pour les événements GridView, ils peuvent être trouvés here
Il y a une liste plus longue à ASP.NET 2.0 Event Order (notez ceci est pour 2.0).
- 1. Quelle est la raison derrière GridView dans ASP.NET?
- 2. GridView imbriqué dans le contrôle du répéteur
- 3. L'événement de contrôle personnalisé ne se déclenche pas la première fois
- 4. Evénement Javascript qui se déclenche sans intervention de l'utilisateur?
- 5. Le rappel getJSON ne se déclenche pas
- 6. Le déclenchement Quartz.NET ne se déclenche pas
- 7. Où dois-je placer le code qui se déclenche une fois la page retournée au navigateur?
- 8. quelle méthode dans le cycle de vie ASP.NET est appelée qu'une seule fois? Il ne se déclenche pas pendant postback
- 9. Le contrôle C# WebBrowser ne déclenche pas l'événement DocumentCompleted
- 10. AddHandler ne se déclenche pas dans rowdatabound
- 11. Le déclencheur de données ne se déclenche pas
- 12. Comment se débarrasser de div vide qui contient un GridView
- 13. Événements ASP.NET ne se déclenchent pas dans la page contenant un contrôle GridView volumineux
- 14. Défilement dans un contrôle gridview
- 15. Boutons du contrôle gridview
- 16. ASP.NET 3.5 Contrôle Gridview
- 17. Asp.net - Comment introduire le défilement dans le contrôle gridview
- 18. Test d'une fonction qui déclenche une erreur
- 19. Quelle est la variable qui indique l'environnement dans Django?
- 20. PreviewMouseRightButtonUp ne se déclenche pas quand Contexte Menu est ouvert
- 21. Le code Jquery en charge ne se déclenche pas
- 22. Y a-t-il un événement qui se déclenche si le nombre de ListViewItems dans un ListView change? (Windows Forms)
- 23. événement ouvert ContextMenuStrip ne se déclenche pas après l'événement opeing
- 24. SubmitCompleteHandler GWT FormPanel ne se déclenche jamais
- 25. Paging sur le contrôle GridView VS-2008
- 26. Dans Groovy SwingBuilder, comment attacher une fermeture à une JTable qui se déclenche lorsqu'une cellule est sélectionnée?
- 27. Écrire un programme qui résume la séquence des nombres entiers, ainsi que la plus petite dans la séquence
- 28. Qu'est-ce qui provoque la ré-énumération d'une séquence F #?
- 29. Quelle est la différence entre le contrôle de lien hypertexte et le contrôle de lien dans ASP.NET?
- 30. Quelle est la meilleure façon de gérer les builds stockés dans le contrôle source?
Vraiment, essayez d'ajouter un System.Diagnostics.Debug.Writeline pour chaque événement comme dans ma réponse. Ajouter un gridview à la page au moment du design, mais vraiment aussi essayer d'en ajouter un au cours de Page_PreRender. Cela vous donnera vraiment une bonne idée de ce qui se passe ... – Ropstah