Accueil > Forum > > > > GridView Changer un ItemTemplate dans le code behind
GridView Changer un ItemTemplate dans le code behind
lundi 16 février 2009 à 14:35:19 |
GridView Changer un ItemTemplate dans le code behind

sspizer
|
Bonjour, j'ai : <asp:GridViewID="_grv"OnRowDataBound="Grv_DataBound"runat="server"> <Columns> <asp:TemplateField> <ItemTemplate> <asp:TextBoxID="_txt"Value='<%# Eval("Toto") %>'runat="server"/> </ItemTemplate> </asp:TemplateField> </Column> </asp:GridView>
Maintenant j'aimerais dans mon code behind changer le style de ma textbox par exemple: _txt.ReadOnly = true;
Seulement si on utilise cette synthaxe il ne trouve pas _txt et je veux absolument le faire avant qu'il commence à générer des lignes et donc ne pas le faire dans le OnRowDataBound.
Je dois m'y prendre comment ?
|
|
lundi 16 février 2009 à 15:43:43 |
Re : GridView Changer un ItemTemplate dans le code behind

shogun_60
|
Salut,
Pourquoi ne pas le mettre dans la partie aspx comme ceci : < asp : GridView ID ="_grv" OnRowDataBound ="Grv_DataBound" runat ="server"> < Columns > < asp : TemplateField > <ItemTemplate > < asp :TextBox ID ="_txt" Value =' <%# Eval("Toto") %>' runat="server" ReadOnly="true" /> </ ItemTemplate > </ asp : TemplateField > </Column> </asp:GridView>
Sinon essayes l'evenement rowCreated peut-être.
|
|
mardi 17 février 2009 à 07:06:27 |
Re : GridView Changer un ItemTemplate dans le code behind

RougailSaucisse
|
bonjour,
Je ne suis pas sur d'avoir bien saisi le "je veux absolument le faire avant qu'il commence à générer des lignes". Tu ne peux bien sur pas faire cela avant de générer les lignes car justement les lignes (et donc les controles inside) n'existent pas encore ^^. Enfin peu importe, et comme l'a dit shogun tu peux très bien utiliser l'event RowCreated (qui de toute facon sera executé avant le rowdatabound si c'est ce que tu souhaite) comme ceci par exemple:
protected void Grv_RowCreated(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { TextBox tb = e.Row.Cells[0].Controls[1] as TextBox; if (tb != null) tb.BackColor = System.Drawing.Color.Bisque; } }
|
|
mercredi 18 février 2009 à 10:20:37 |
Re : GridView Changer un ItemTemplate dans le code behind

sspizer
|
Je vais essayer d'être plus clair dans ce que je veux faire ^^ :D. Voila en fait quand je met une textbox dans mon gridview, il va répéter cette textbox pour chaque Objet issu du DataBound. Par exemple: Data = 10 Rows. J'aurai donc 10 fois ma textbox, maintenant imaginons que j'ai envie de changer une propriété de ma textbox dans mon code behind car ça dépend d'un événement qui se passe.
Par exemple quand je reçois en session (Session["mode"] = "ReadOnly"), j'aimerais dans mon code behind changer une propriété de chaque TextBox générée par le gridview, par exemple changer ça propriété ReadOnly = true. Maintenant deux possibilité s'offrent à moi:
1) Utiliser l'évenement OnRowDataBound récupérer dans chaque ligne ma TextBox et changer sa propriété et donc lancer 10 fois l'évenement.
2)Changer la TextBox original avant génération et affecter sa propriété ReadOnly = true avant génération. (cependant je n'arrive pas à y accéder)
Et ce que je cherche à faire c'est justement le 2) !
Voila ça devrait vous aider =). En tout cas merci mille fois pour votre aide.
|
|
mercredi 18 février 2009 à 17:34:40 |
Re : GridView Changer un ItemTemplate dans le code behind

RougailSaucisse
|
euh dans ce cas, je dirai ptet de faire un systeme basé sur les thèmes. en fonction de ce que tu recois dans ta variable de session, tu charges un theme. Puis dans chaque theme tu definis une textbox avec un skinID (dans un theme Textbox sans ReadOnly et dans l'autre avec) et dans ta gridview tu mets la <:asp:Textbox skinId="GvTextBox" .... />. Je ne sais pas si ca marche comme il le faudrait, mais à essayer et tu me diras.
|
|
lundi 23 février 2009 à 13:31:34 |
Re : GridView Changer un ItemTemplate dans le code behind

sspizer
|
Pourquoi aller dans la complexité tout ce que je veux c'est accéder au control "_txt" que j'ai dans mon code là et le changer avant que le gridview commence à générer ces lignes.
En gros "_txt" est un modèle et j'aimerais que ce model soit changé avant que le GridView l'utilise.
Et il faut que ça soit fait dans le codebehind.
|
|
lundi 23 février 2009 à 16:49:10 |
Re : GridView Changer un ItemTemplate dans le code behind

jagxx
|
Salut,
Essaie de le faire dans l'evenement PreInit de la page.
Jag
|
|
lundi 23 février 2009 à 20:37:53 |
Re : GridView Changer un ItemTemplate dans le code behind

RougailSaucisse
|
Je dois mal comprendre la question decidement. comment veux-tu modifier un control qui n'existe pas encore a l'instant t? Pour y avoir acces, il faut obligatoirement qu'il ait été crée non? (ah moins d'utiliser un systeme de theme comme je disais précédemment) et étant donné qu'il s'agit d'un control dépendant de ta source de données liées a la datasource comment veux-tu en modifier les propriétés dans le pre-init ou autre event precedent le databound? Franchement je ne vois pas ce qu'il y a de mal a le faire dans le rowdatabound ou rowcreated, c'est 4 lignes de code.
|
|
mardi 24 février 2009 à 10:49:45 |
Re : GridView Changer un ItemTemplate dans le code behind

sspizer
|
Hum l'objet existe bien puisqu'on le visualise dans la page ascx. Il doit y avoir un moyen d'y avoir accès avant que le gridview commence à l'utiliser. Je pense que ca peut marcher dans le rowdatabound mais en fait mon soucis cest ca:
Si on a : < asp:TextBox ID="_txt" Value='<%# Eval("Toto") %>' runat="server" ReadOnly="true" />
Maintneant on veut pour une raison X qu'il ne bind pas Value! Si je le faisais dans le RowCreated ou RowDataBound, j'arriverais au moment où il aurait déjà bindé. Alors que si j'y accéde avant génération non seulement j'empeche le binding et en plus ca sera general a toutes les lignes de mon gridview
|
|
mardi 24 février 2009 à 11:41:34 |
Re : GridView Changer un ItemTemplate dans le code behind

shogun_60
|
Salut,
A ta place je laisserais Value = "" par défaut.
Ensuite, dans l'evenement RowDataBound de ton GridView je ferais :
Dim TaTextBox As TextBox = gv.Rows(e.Row.RowIndex).FindControl("_txt") Pour récupérer le control TextBox de ta ligne.
Une fois que tu as récupérer le control tu peux en faire ce que tu veux, par exemple :
If taCondition = TrueThen TaTextBox .Text = "Ta valeur si True" Else TaTextBox .Text = "Ta valeur si False" Voila, j'espère que ca répond à ta question  
|
|
Cette discussion est classée dans : asp, code, changer, behind, itemtemplate
Répondre à ce message
Sujets en rapport avec ce message
code behind dans asp.net [ par kenza_sana ]
Salut je trouve partotu que le code behind en realite separe le fichier presentation du code donc (html et aspx)alors que je trouve parfois que ca sep
ASP.Net avec Code-Behind [ par YomYom ]
Cherche perle rare: hébergeur supportant des sites en ASP.Net en code-behind et base SQL server et cerise sur le gateau, à un prix abordable (c'est po
ASP.net 2, code behind d'une masterpage [ par lutin2004 ]
Bonjour,Je viens de passer à asp.net 2 et j'ai un soucis avec les masterpage.J'ai rajouté la balise codefile, mais il me faut aussi le inherits, mais
asp.net et code behind [ par aymdeb ]
Bonjour,J'ai un formulaire asp.net et lorsque je clique sur les boutons, les procédures du code behind associées aux boutons ne s'exécute pas.Quelqu'u
Template Field en code behind [ par zigxag ]
Bonjour !Je voudrais écrire ceci (ASP.net 2) en code behind C# 2, mais je trouve pas comment faire. Comment ajouter un templatefield à un gridview en
Code behind et javascript [ par emalio13 ]
Bonjour à toutes et à tous,Etant débutante en ASP.net, je rencontre quelques difficultés.En effet, je développe une application avec visual web develo
Pb de variables entre ASP.NET et code behind [ par zlorg ]
Bonjour, Je voudrais récupérer la valeur d'une variable définie dans mon code behind dans mon code ASP, ça ne fonctionne pas et je ne comprends p
ASP.NET - Utilisation DLL C++ - Exception occasionelle [ par savage251 ]
Bonjour, je me permet de poter mon problème qui me prend la tête depuis plusieurs semaines... J'ai développé une application ASP.NET en vb.net, dans
quel logiciel pour debugger mon code ASP [ par assandre ]
Bonjour , je voudrais configurer mon serveur IIS pour qu'il m'affiche les lignes où se situent l'erreur ; si cela n'est pas possible , pouvez vous me
debugger son code ASP [ par assandre ]
Bonjour , je voudrais savoir quel programme utiliser pour debuger mes codes ASP.
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|