Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Developing a row-clickable GridView

Joteke a posté un exemple très simple et bien expliqué pour développer ajouter à une gridView un événement lorsqu'on clique sur une ligne.
Ce comportement peut s'avérer en effet très utile.
Pour ce qui sont encore sons ASP.NET 1.1, il avait déjà rédigé How to develop a row-clickable DataGrid control? pour avoir la même fonctionnalité sur une datagrid.
L'idée est de développer un contrôle qui hérite de la gridView et de lui ajouter l'événement lorsqu'on clique sur une ligne.
 
Voici quelques extraits de code pour que vous compreniez l'essentiel :
1) on ajoute la propriété :
Public Property EnableRowClick() As Boolean
2) On substitue la méthode PrepareControlHierarchy afin de déclencher un évènement sur le clic d'une ligne
Protected Overrides Sub PrepareControlHierarchy()
            MyBase.PrepareControlHierarchy()
            
If EnableRowClick Then
                Dim i As Integer
                For i = 0 To Rows.Count - 1
                    Dim argsData As String = "rc" & Rows(i).RowIndex.ToString()
                    Me.Rows(i).Attributes.Add("onclick", Page.ClientScript.GetPostBackEventReference(Me, argsData))
                Next
            End If

        End Sub

3) On substitue la méthode RaisePostBackEvent qui gère les évènements et on déclenche l'évènement OnRowClicked
Protected Overrides Sub RaisePostBackEvent(ByVal eventArgument As String)
            If eventArgument.StartsWith("rc") Then
                Dim index As Integer = Int32.Parse(eventArgument.Substring(2))
                Dim args As New GridViewRowClickedEventArgs(Me.Rows(index))
                OnRowClicked(args)
            Else
                MyBase.RaisePostBackEvent(eventArgument)
            End If

        End Sub
A l'utilisation, il suffit donc d'ajouter une instance de cette gridView à la page .aspx puis de gérer l'évènement :

Protected
Sub myGridView1_RowClicked(ByVal sender As Object, ByVal e As SampleControls.GridViewRowClickedEventArgs)
Handles myGridView1.RowClicked
        Response.Write("Index of the clicked row was: " + e.Row.RowIndex.ToString())
    End Sub
Publié lundi 9 janvier 2006 14:08 par tonio
Classé sous :
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires

# re: Developing a row-clickable GridView

Très bonne idée j'en ai super besoin par contre, vous n'auriez pas le code C#?

Merci :D
jeudi 16 février 2006 11:00 by gstrit

# re: Developing a row-clickable GridView

Scott Mitchell de 4guysFromRolla a aussi écrit un article sur ce genre de fonctionnalité pour une datagrid en C# :

http://aspnet.4guysfromrolla.com/articles/072104-1.aspx

ou sur la page de ses contrôles serveur :
http://scottonwriting.net/sowBlog/CodeProjects.htm
jeudi 16 février 2006 16:25 by Tonio
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- Merci par Blog de Jérémy Jeanson le 10-01-2019, 20:47

- Office 365: Script PowerShell pour auditer l’usage des Office Groups de votre tenant par Blog Technique de Romelard Fabrice le 04-26-2019, 11:02

- Office 365: Script PowerShell pour auditer l’usage de Microsoft Teams de votre tenant par Blog Technique de Romelard Fabrice le 04-26-2019, 10:39

- Office 365: Script PowerShell pour auditer l’usage de OneDrive for Business de votre tenant par Blog Technique de Romelard Fabrice le 04-25-2019, 15:13

- Office 365: Script PowerShell pour auditer l’usage de SharePoint Online de votre tenant par Blog Technique de Romelard Fabrice le 02-27-2019, 13:39

- Office 365: Script PowerShell pour auditer l’usage d’Exchange Online de votre tenant par Blog Technique de Romelard Fabrice le 02-25-2019, 15:07

- Office 365: Script PowerShell pour auditer le contenu de son Office 365 Stream Portal par Blog Technique de Romelard Fabrice le 02-21-2019, 17:56

- Office 365: Script PowerShell pour auditer le contenu de son Office 365 Video Portal par Blog Technique de Romelard Fabrice le 02-18-2019, 18:56

- Office 365: Script PowerShell pour extraire les Audit Log basés sur des filtres fournis par Blog Technique de Romelard Fabrice le 01-28-2019, 16:13

- SharePoint Online: Script PowerShell pour désactiver l’Option IRM des sites SPO non autorisés par Blog Technique de Romelard Fabrice le 12-14-2018, 13:01