Insérer des textbox dans le footer d'un datagrid

Signaler
Messages postés
2
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
5 mai 2006
-
Messages postés
255
Date d'inscription
mercredi 3 novembre 2004
Statut
Membre
Dernière intervention
21 avril 2009
-
Bonjour,
Voilà, l'énnoncé du sujet en dit long.
Il s'agit d'une webform en aspx, le code behind est en Csharp.
Je travaille sur un datagrid qui présente toutes les tables de ma bdd (sql) lorsque l'utilisateur selectionne une ligne, donc une table il est redirigé vers une autre page qui contien un datagrid qui est alors remplit par un dataset qui dépend lui-même du choix effectué en page précédente.
Maintenant j'aimerai ajouter des textbox dans le footer du datagrid (autant de textbox que de champs dans la table choisi ) pour pouvoir permettre l'ajout d'une ligne (validé par un linkbutton dans le datagrid ou par un bouton sur la webform)
Comment faire ?

Merci d'avance.

Syl'

&

4 réponses

Messages postés
192
Date d'inscription
dimanche 5 janvier 2003
Statut
Membre
Dernière intervention
9 mars 2007
1
Bonjour,

Le sujet n'est pas évident, je vais te donner la démarche que je prendrais, mais je ne suis pas certain que ça soit la bonne. Si des cadors peuvent donner leurs avis.

1°) Il faut que tu mettes le ShowFooter à True et la AutoGenerateColomns de ta datagrid à False
2°) A près avoir contruit ton dataset (en fait c'est la datatable qui nous interesse), parcours chaque colonne de ta datatable.
Pour chaque colonne dans ta datatable, ajoute une templatecolomn qui va bien (avec le ItemTemplate, et le FooterTemplate) à ta datagrid.

Pour t'aider (c'est même plus qu'aider) à faire ça, j'ai deux urls :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon/html/vbtskcreatingtemplatesprogrammaticallyindatagridcontrol.asp
http://www.codeproject.com/aspnet/ASPNET_DataGrid_creation.asp

Bon code,

TiK - MCAD.NET
http://www.objectif-services.com
http://www.ultimecms.com
Messages postés
2
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
5 mai 2006

Bonjour !
Merci pour l'info


J'ai suivi ton conseil, je suis effectivement passé par des colonnes templates,


chacune contient une textbox dans le footer.


Mon problème maintenant c'est que je n'arrive pas à récupérer le texte saisi dans ces textbox
quand je fais


_nomchamp10= DataGrid2.FindControl("_Textbox_footer_chp10").ToString();


Je recois un message d'erreur me disant que la reference est null (que ("_Textbox_footer_chp10") n existe pas en gros.
Alors que cette boite existe et a bien "_Textbox_footer_chp10" pour id !!!



' ID="_Label_affiche_chp10" >


<FooterTemplate>

_Textbox_footer_chp10 Visible="True" Runat="server" Width="100">
</FooterTemplate>
<EditItemTemplate>
' ID="_Textbox_edit_chp10" >

</EditItemTemplate>
<?xml:namespace prefix = asp />' runat="server"> <FOOTERTEMPLATE></FOOTERTEMPLATE><EDITITEMTEMPLATE>' runat ="server"></EDITITEMTEMPLATE>' runat= "server"><FOOTERTEMPLATE></FOOTERTEMPLATE><EDITITEMTEMPLATE>' runat="server"></EDITITEMTEMPLATE> ' runat="server"> <FOOTERTEMPLATE></FOOTERTEMPLATE><EDITITEMTEMPLATE>' runat ="server"></EDITITEMTEMPLATE>' runat="server"><FOOTERTEMPLATE></FOOTERTEMPLATE><EDITITEMTEMPLATE>' runat="server"></EDITITEMTEMPLATE>

Comment faire pour récupérer ce qui a été saisi dans les textboxs du/des footer ?





Merci d'avance !

Syl'

&
Messages postés
255
Date d'inscription
mercredi 3 novembre 2004
Statut
Membre
Dernière intervention
21 avril 2009

Bonjour

je voudrais savoir si tu as réussi a récuperer les valeurs de tes textbox??
Car moi j'ai quazi le mm problème sauf que se sont des dropdownlist sur chaque ligne du datagrid!!

Merci d'avance
Enjoy @+
<<--<<--nOUnoURs-->>-->>
Messages postés
255
Date d'inscription
mercredi 3 novembre 2004
Statut
Membre
Dernière intervention
21 avril 2009

J'ai modifié une source du site :

For

Each ligne
As DataGridItem
In
Me.dg.Items

Dim lbAction
As DropDownList = ligne.Cells(5).FindControl("lbAction")cnx.getDataReader("update db_eve set id_etat='" + lbAction.SelectedValue() + "' from db_eve where id_eve = '" + ligne.Cells(0).Text + "'")

cnx.fermerDataReader()

Next

<<--<<--nOUnoURs-->>-->>