Accueil > Forum > > > > ASP.NET et C# - Paramétrage contrôl Label dans un ItemTemplate de DataList
ASP.NET et C# - Paramétrage contrôl Label dans un ItemTemplate de DataList
lundi 28 janvier 2008 à 10:43:40 |
ASP.NET et C# - Paramétrage contrôl Label dans un ItemTemplate de DataList

zouzou0607
|
Bonjour, je cherche à accéder en code behind à un controle Label dans l'ItemTemplate d'un DataList afin d'y afficher un texte dynamiquement s'il y a lieu. Voici mon code : <body>
<form id="form1" runat="server">
<div>
<asp:DataList ID="DataList1" runat="server">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text="Test"></asp:Label>
</ItemTemplate>
</asp:DataList></div>
</form>
</body>et mon code behind : Label lb = newLabel();lb = ( Label)FindControl("Label1");lb.Text = "coucou !";
la génération passe mais lorsque j'affiche ma page dans mon navigateur j'obtiens : La référence d'objet n'est pas définie à une instance d'un objet
Quelqu'un aurait-il une idée ? Zouzou
|
|
lundi 28 janvier 2008 à 21:41:51 |
Re : ASP.NET et C# - Paramétrage contrôl Label dans un ItemTemplate de DataList

nhervagault
|
Salut
Il faut que tu modifie sur l'événement
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) et la row courante dans le e.Row
Aprés a toi de t'amuser a modifier les cellules.
Voila
|
|
mardi 29 janvier 2008 à 09:46:28 |
Re : ASP.NET et C# - Paramétrage contrôl Label dans un ItemTemplate de DataList

zouzou0607
|
D'accord mais je n'ai pas de GridView dans ma page, j'ai un DataList. Donc j'ai essayé comme çà en behind : protectedvoid DataList1_ItemDataBound(object sender, DataListItemEventArgs e){ Label lb = newLabel();lb = ( Label)FindControl("Label1");lb.Text = "coucou !";} et voila ma page :
<formid="form1"runat="server"><div><asp:DataListID="DataList1"runat="server"OnItemDataBound="DataList1_ItemDataBound"><ItemTemplate><asp:LabelID="Label1"runat="server"Text="test"></asp:Label></ItemTemplate></asp:DataList></div></form>Soit dit-en passant je suis novice en ASP et encore plus en C#.  Merci d'avance !!  Zouzou
|
|
mardi 29 janvier 2008 à 19:17:11 |
Re : ASP.NET et C# - Paramétrage contrôl Label dans un ItemTemplate de DataList

nhervagault
|
Voila de quoi t'aider
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e) { Label lb = new Label(); lb.Text = (e.Item.DataItem as DataRowView)["ProductName"].ToString(); e.Item.Controls.Add(lb); }
Si tu as une colonne dans ta datasource.
Sinon tu peux parcourir la collection des controles.
|
|
mardi 3 juin 2008 à 12:01:21 |
Re : ASP.NET et C# - Paramétrage contrôl Label dans un ItemTemplate de DataList

pifou25
|
Bonjour,
j'ai trouvé ce post très intéressant ça m'a bien fait avancer... mais pas tout à fait! j'ai voulu utiliser un hyperlink à la place du label ci dessus et j'ai l'erreur sur la dernière ligne: e.Item.Controls.Add(hlp);
L'exception System.ArgumentException n'a pas été gérée par le code utilisateur Message="'TableRow' ne peut pas avoir d'enfant du type 'HyperLink'." Source="System.Web"
Comment puis-je ajouter un hyperlink dans ma cellule alors?
|
|
mardi 3 juin 2008 à 12:56:40 |
Re : ASP.NET et C# - Paramétrage contrôl Label dans un ItemTemplate de DataList

ghano81
|
pifou25 si tu utilise une table TAble ou une table html voila comment ajouter un hyperlink dans ta cellule Table Table1 = newTable();TableRow tempRow = newTableRow(); HyperLink lien = newHyperLink();
TableCell tempCellc = newTableCell();
tempCellc.Controls.Add(lien);tempRow.Cells.Add(tempCellc);
Table1.Rows.Add(tempRow);
pour chercher ton controle
foreach (TableRow row in Table1.Rows){ HyperLinkchec = (HyperLink)row.FindControl(ID);if (chec.Checked && chec != null){ string gh = row.Cells[0].Text;Response.Write(gh); }
|
|
mardi 3 juin 2008 à 14:03:35 |
Re : ASP.NET et C# - Paramétrage contrôl Label dans un ItemTemplate de DataList

nhervagault
|
Salut,
Remettons un peu d'ordre dans le post pour ne pas induire en erreur et melanger les réponses.
ghano81 : Ta méthode est une méthode qui est a éviter au maximum en dotnet.
Tu ne separes pas la présentation des traitements.
Tu perds de nombreux avantages du datagrid (modele objet et ...)
Tu perds la personnalisation plus fine permise par ce composant, malgré qu'il est préférable d'utiliser le listview du framework 3.5 (CSS friendly et customisation encore plus fine)
Le datagrid te generas un tableau html au final, et tu n'a en général pas besoin de modifier le code source pour modifier l'aparence.
pifou25 : TableRow ne peut pas contenir des hyperlink c'est un peu normal.
en HTML il tr contient des cellule "<td>" et non des link "<a>"
Il faut que tu descendes au niveau du TableCell pour inserer ton controle hyperlink.
Sinon pourquoi ne pas utiliser un itemtemplate pour faire ton lien,
il faut au maximum ne pas inserer de controle pendant la phase de rendu.
Question de maintenance.
Bon coding a vous tous.
|
|
mardi 3 juin 2008 à 14:27:53 |
Re : ASP.NET et C# - Paramétrage contrôl Label dans un ItemTemplate de DataList

ghano81
|
nhervagault : oui t'as raison c'est pas evident d'utiliser une table html et gerer bien les controles enfants surtout lorsque sont crées dynamiquement (enfin c'est à eviter ) mais moi jé repondu selon son besoin à mon avis utiliser un repeater mieu qu'un datagrid ou gridview
bonne chance et goodluck
|
|
mardi 3 juin 2008 à 14:56:03 |
Re : ASP.NET et C# - Paramétrage contrôl Label dans un ItemTemplate de DataList

nhervagault
|
Ok,
Mais je pense que la raison est celle indiqué dans mon post que tu n'avais pas du voir gestion des tablerow et tablecell.
Il fallait recadrer un peu le post pour ne pas mélanger les 2 techniques de creation de tableau.
Je serais plus sur le listview que sur le repeater, il est possible de faire
les 3 types de controle (repeater, datalist et gridview ) avec ce controle.
Bon coding
|
|
mercredi 4 juin 2008 à 16:31:09 |
Re : ASP.NET et C# - Paramétrage contrôl Label dans un ItemTemplate de DataList

pifou25
|
Merci pour vos réponses et explications
nhervagault > je n'ai pas le choix je pense, d'utiliser cette méthode: actuellement il y a bien un itemTemplate avec un type de lien + label, mais dans mon cas je me retrouve avec une colonne qui contient un lien différent selon le type de la ligne. Quoi qu'il en soit, chaque ligne contient un lien et je pourrais insérer un lien "par défaut" du coté aspx puis définir dans le code-behind la propriété "navigateURL" du lien vers l'un ou l'autre cible. C'est mieux ainsi?
|
|
Cette discussion est classée dans : label, code, runat, datalist, itemtemplate
Répondre à ce message
Sujets en rapport avec ce message
Datalist avec pour source une procédure stockée ne renvoyant pas d'enregistrements. [ par prady92 ]
Bonjour, 2 questions qui découlent l'une de l'autre : 1°) comment dans un "datalist" avec un "DataSourceID" basé sur une Procédure stockée faire app
Formulaire avec et sans runat=server [ par pactoopac ]
Bonjour, Quand je fais ce code : Code :<pre class="alt2" dir="ltr" style="border: 1px inset ; margin: 0px; padding: 6px; overflow: auto; width: 640
retourner une valeur a un label asp [ par BrokenArrow29 ]
Bonjour,J'ai un message d'erreur que je ne comprend pas"Collection est en lecture seule"dans mon code html je veux atttribué une valeur string a un la
dynamique <title> [ par gzitoun ]
Bonjour,je souhaite modifier le titre de ma page lorsque je clique sur un element de mon datalist. Or, lorsque je suis pas a pas mon code je vois qu
GridView Changer un ItemTemplate dans le code behind [ par sspizer ]
Bonjour,j'ai :asp:
Problème avec datalist [ par abdokailany ]
Bonjour tout le monde, J'ai une datalist avec un champ label et je souhaiterai que lorsque je clique sur le label obtenir sa valeurJ'ai testé avec
code behind + html [ par emmanuel9 ]
Bonjour à tous, J'ai une ArrayList de chaine et je voudrais afficher dynamiquement sur ma page en asp.net ces chaînes sous forme de label donc je fa
afficher / masquer boutton dans Datalist d'après item [ par jonf ]
Bonjour, j'ai passé toute la nuit et là j'avoue ne pas trouver le bout qui me manque... j'espère que vous pourrez m'aider !J'utilise donc un datalist
Recuperation de valeur dans une datalist [ par drakula ]
Salut la compagnie ! Voila j'ai un leger soucis, je voudrais recuperer la valeur d'une checkbox html qui est contenue dans une datalist dont voici le
DataList + code [ par alexyDeBissy ]
j'arrive à réaliser une dataList qui se rempli avec une base de données (jusqu'ici pas de problème) mais je voudrais que chacun des éléments de ce dat
Livres en rapport
|
Derniers Blogs
[DESIGN PATTERNS] PARTIE 2: DIP: DEPENDENCY INVERSION PRINCIPLE[DESIGN PATTERNS] PARTIE 2: DIP: DEPENDENCY INVERSION PRINCIPLE par tja
C'est le dernier principe des principes du Design Orienté Objet (The Principles of Object Oriented Design) fondés par Robert C. Martin plus connu sous le pseudonyme d'Uncle Bob.
l'image empruntée de LosTechies.
Je ne traite pas les principes dans...
Cliquez pour lire la suite de l'article par tja TECHDAYS PARIS 2010 : SHAREPOINT 2010 POUR LES DéVELOPPEURSTECHDAYS PARIS 2010 : SHAREPOINT 2010 POUR LES DéVELOPPEURS par ROMELARD Fabrice
Animé par: Laurent Cotton Le développement dans SharePoint 2010 passe par plusieurs axes qui seront évoqués dans cette session, mais plus particulièrement les développements simples lié au besoin Business Business Connectivity Services Ce BCS es...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLEINIèRE DERNIER JOURTECHDAYS PARIS 2010 : PLEINIèRE DERNIER JOUR par ROMELARD Fabrice
Cette session est la dernière pleinière de ces 3 jours de TechDays Paris 2010. Généralement, cette troisième journée est plus axée sur l'avenir vu par Microsoft. Après un retour sur l'avenir vu par la Science Fiction ou par ...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
VB.NETVB.NET par hajourawm
Cliquez pour lire la suite par hajourawm URL REWRITINGURL REWRITING par hudon77
Cliquez pour lire la suite par hudon77
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|