CodeS-SourceS
Rechercher un code, un tuto, une réponse

Récupérer des valeurs d'une ligne dans un datagrid après avoir choisi un élément dans un dropdownlist

Soyez le premier à donner votre avis sur cette source.

Snippet vu 14 187 fois - Téléchargée 9 fois

Contenu du snippet

J'avais un petit problème avec les DropDownLists d'une colonne dans un DataGrid. Je viens de trouver la solution. Elle est ce qu'elle est, si quelqu'un peu me proposé mieux, je suis preneur.

Mon dataGrid se compose de 16 (les index vont de 0 à 15) colonnes dont la première (index=0) est cachée. La colonne d'index = 13 est un TextBox et la colonne d'index = 14 est composé de DropDownList.

Source / Exemple :


Dim strMotif As DropDownList = CType(sender, DropDownList)
Dim intMotif As String = Integer.Parse(strMotif.Text)

' La cellule qui contient le dropdownlist   
Dim cell As TableCell = CType(strMotif.Parent, TableCell)

' On remonte à la ligne
Dim dgi As DataGridItem = CType(cell.Parent, DataGridItem)

' La cellule avec le textBox
cell = dgi.Cells(dgi.Cells.GetCellIndex(cell) - 1)
Dim Quantite As TextBox = CType(cell.Controls(1), TextBox)
Dim strQte As String = Quantite.Text

' Maintenant, on récupère les cellules qui nous intéresse pour notre traitement.
' Récupération du numéro de la ligne
Dim strNumLigne As String = dgi.Cells(0).Text

' Récupération du colisage
Dim strColisage As String = dgi.Cells(11).Text

' Récupération de la quantité OAR.
Dim strQuantiteOAR As String = dgi.Cells(12).Text

' Récupération du type
Dim strType As String = dgi.Cells(15).Text

Conclusion :


Il ne vous reste plus qu'a placer ce bout de code à un événement de votre DropDownList et le tour est joué.

Comme je vous le disais, ce n'est sûrement pas la solution idéale, mais elle à le mérite de fonctionner. Si vous avez mieux à me proposer, je me ferai un plaisir d'écouter vos critiques (constructives bien entendue) où vos remarques et de les mettre en pratique.

Bon développement à tous.

PascalCmoa

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.