DataValueField et DataTextField [Résolu]

Paramba 47 Messages postés vendredi 18 novembre 2005Date d'inscription 3 septembre 2012 Dernière intervention - 22 sept. 2006 à 17:45 - Dernière réponse : Miczka 4 Messages postés lundi 24 août 2009Date d'inscription 5 septembre 2009 Dernière intervention
- 26 août 2009 à 10:09
Bonjour
Est il possible d'avoir un exemple d'utilisation de DataValueField et DataTextField appliquées à un contrôle ListBox?
Merci d avance
Afficher la suite 

4 réponses

Répondre au sujet
jesusonline 6827 Messages postés dimanche 15 décembre 2002Date d'inscription 13 octobre 2010 Dernière intervention - 22 sept. 2006 à 23:33
+3
Utile
DataTable datas = new DataTable();
datas.columns.add("Label");
datas.columns.add("ID");

...

LaListBox.DataSource = datas;
LaListBox.DataTextField = "Label";
LaListBox.DataValueField = "ID";
LaListBox.DataBind();

Ces 2 propriétés permettent de connaitre quelle propriété du datasource la listbox doit utiliser pour afficher le text (DataTextField) et la valeur (DataValueField). Quelques soit la source de données (collection typé, DataReader, DataTable) il faut qu'elle contiennent les 2 propriétés renseignés dans DataTextField et DataValueField pour que ton listbox puisse afficher les items.

Ensuite tu pourras recuperer facilement l'item selectionné en faisant LaListBox.SelectedItem.Text qui correspondra a la propriété Label du datasource de la ligne selectionné et LaListBox.SelectedItem.Value qui correspondre a la propriété ID du datasource de la ligne selectionné.

<hr />Cyril - MVS - MCP
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de jesusonline
Paramba 47 Messages postés vendredi 18 novembre 2005Date d'inscription 3 septembre 2012 Dernière intervention - 23 sept. 2006 à 01:28
0
Utile
Excellent!!!!!!!!!Très claire explication....
Commenter la réponse de Paramba
Miczka 4 Messages postés lundi 24 août 2009Date d'inscription 5 septembre 2009 Dernière intervention - 24 août 2009 à 14:43
0
Utile
Bonjour à tous,

Je suis nouveau ici, débutant en C#.
Je me permets de remonter ce topic car il correspond assez bien à la question que je vais poser.
S'il est préférable de lancer un nouveau sujet pour ce genre de cas, je m'en excuse d'avance, je ne connais pas encore les habitudes de ce forum.

Mon problème :
je crèe plusieurs checkboxlist dynamiquement au sein d'une table.
(une checkboxlist par ligne).
A l'affichage, mes données entrées en DataValueField s'affichent à côté de mes checkbox (comme si je les avais assignées à un DataTextField): je voudrais éviter cela. Et donc arrivée à un affichage avec les Checkbox seules, sans texte à côté.
Voici le code.

(...)
            for (int i = 0; i < datb2.Tables[0].Rows.Count; i++)
            {
                // création rows et cellules
                TableRow row = new TableRow();
                TableCell cell = new TableCell();
                TableCell cell2 = new TableCell();
                cell.Text = "" + datb2.Tables[0].Rows[i][3].ToString()+"";
                //création cblist
                CheckBoxList cbl = new CheckBoxList();
                cbl.ID = "q2_b_2" + datb2.Tables[0].Rows[i][6].ToString();
                cbl.DataSource = bddu4.selectDonnee("q2_b_1", Request.QueryString["langue"].ToString(), Request.QueryString["pays"].ToString());
                cbl.DataValueField = "ordre";
                cbl.DataBind();
                cell2.Controls.Add(cbl);

(...)
Commenter la réponse de Miczka
Miczka 4 Messages postés lundi 24 août 2009Date d'inscription 5 septembre 2009 Dernière intervention - 26 août 2009 à 10:09
0
Utile
Ma question n'a pas eu trop de succès.
Je publie quand même la solution :

voici le code utilisé pour régler le problème

 cbl.Font.Size = FontUnit.Point(0);  

cbl.Font.Size = FontUnit.Point(0);



Il doit y avoir une solution plus élégante, mais ceci fonctionne.
Commenter la réponse de Miczka

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.