Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1970 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [Résolu][ASP.NET][C#] Rajouter une couche apres le DataBind

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Résolu][ASP.NET][C#] Rajouter une couche apres le DataBind

n°1016439
Worldofdad​a
Posté le 17-03-2005 à 18:19:04  profilanswer
 

Bonjour !
 
Je viens de créer un DataGrid que je rempli grâce a un DataSet provenant d’une base de donnée.
Je fais donc :

Code :
  1. this.dgGroups.DataSource = this.objDSGroups.Groups.DefaultView;
  2. this.dgGroups.DataBind();


 
Où dgGroups est mon DataGrid et objDSGroups mon DataSet.
 
Ce que je voudrais faire, et c’est très probablement possible, ce serait binder certains champs.
C'est-à-dire que certaines colonnes sont des booléens et j’aimerais afficher dans mon DataGrid "X" pour true et "" pour false.
 
J’ai fais un truc de barbare qui certes marche mais j’aimerais savoir s’il n’existe pas une fonction qui permet de faire ca "tout seul" ... une fonction déjà faite évitant ces boucles a la noix.
Voilà ce que j’ai fais que j’aimerais modifier :

Code :
  1. for(int i = 0; i < this.dgGroups.Items.Count; i++)
  2. {
  3.   for(int j = 0; j < this.dgGroups.Columns.Count; j++)
  4.   {
  5.     if(this.dgGroups.Items[i].Cells[j].Text == "True" )
  6.       this.dgGroups.Items[i].Cells[j].Text = "X";
  7.   }
  8. }


 
Connaitriez vous cette function "magique" ?
(je suis débutant en asp.net ainsi qu’en C# … ca promet)
 
Merci beaucoup
Worldofdada


Message édité par Worldofdada le 23-03-2005 à 11:04:04
mood
Publicité
Posté le 17-03-2005 à 18:19:04  profilanswer
 

n°1016703
Yonel
Monde de merde !
Posté le 17-03-2005 à 22:20:26  profilanswer
 

Si tu veux tu peux faire cette méthode là pour éviter tes boucles :
Dans ton fichier .aspx tu remplaces la ligne de ton booléen (<%#DataBinder.Eval(Container.DataItem, "booleen" )%> ) par quelque chose comme <%#afficherBooleen(DataBinder.Eval(Container.DataItem, "booleen" ))%>
 
Ensuite dans ton .cs tu écris le corps de la fonction afficherBooleen(). Ca ne doit pas être très compliqué. Je connais seulement la syntaxe de VB.Net mais ça devrait être un truc du genre :  
 

Code :
  1. public string afficherBooleen(bool monBooleen) {
  2.   if (monBooleen) {
  3.     return("xxx" );
  4.   }
  5.   else {
  6.     return("" );
  7.   }
  8. }


n°1016716
FlorentG
Unité de Masse
Posté le 17-03-2005 à 22:29:56  profilanswer
 

Tiens, un article qui devrait te plaire ;)

n°1016876
Worldofdad​a
Posté le 18-03-2005 à 09:05:47  profilanswer
 

Yonel :
Le problème, c'est que je n'ai pas de DataBinder.Eval(Container.DataItem ....).
 
Le DataGrid se rempli simplement pas un DataBind() dans mon Page_Load. Je vais voir ce que je peux faire pour remplir les champs un a un  ;)  
 
FlorentG : merci pour l'article, je vais voir ca  :)  
 
Merci ... je continue mes recherches et si vous avez des idées supplémentaires, je suis prenneur.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [Résolu][ASP.NET][C#] Rajouter une couche apres le DataBind

 

Sujets relatifs
[Access][Résolu] Impossible de modifier des données[Access] [résolu] Affichage de données
Récupération du nom de la machine cliente (asp / VB .Net)[.NET][ASP.NET][C#] Rendre non cliquable certaine zones d'un calendar.
[JAVA] [Résolu] Afficher une page html avec CSS dans un JEditorPane[PERL] Petite question sur substitution....[RESOLU]
[résolu][applet] probleme d'affichage[RESOLU] [CSS] bug IE : texte invisible et décalage bizarre
[RESOLU] pb: JSP/JavaBean 
Plus de sujets relatifs à : [Résolu][ASP.NET][C#] Rajouter une couche apres le DataBind


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR