Quel controle utiliser

moorice Messages postés 21 Date d'inscription vendredi 7 janvier 2005 Statut Membre Dernière intervention 24 février 2005 - 27 janv. 2005 à 17:19
moorice Messages postés 21 Date d'inscription vendredi 7 janvier 2005 Statut Membre Dernière intervention 24 février 2005 - 31 janv. 2005 à 08:55
Bonjour a tous et a toute,
je developpe une application web asp.net c# et je doit programmer quelque chose qui ressemble graphiquement a ca:

a - b - c - ... - z

a:
albert arthur antoine ...

b:
bernard brigitte bastien...

les prenoms viennent d'une base sql seveur et je doit les afficher en fonction de leur premiere lettre. je doit aussi faire un lien avec les lettre a - b - c - ... - z pour positionner l'ascenceur directement au niveau du paragraphe correspondant.
Si quelque voit comment je peu faire merci de me donner un coup de main
merci d'avance

un debutant

6 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
27 janv. 2005 à 20:09
Moi je te conseil de faire ca via un repeater. pour la source de donnée, tu peux t'amuser à faire

monrepeater.datasource = {"a","b",...,"z"}

mais un developpeur est par définition faineant donc tu peux faire ta liste avec les codes ascii : http://blogs.developpeur.org/cyril/archive/2004/11/25/3550.aspx

ca donnera un truc du genre

dim alphabet() as string
for i as integer = 65 to 90
alphabet(i-65) = chr(i)
next

monrpt.datasource = alphabet

ensuite pour les prénoms, t'as qu'a faire un lien qui redirige vers la meme page et tu passes en param ta lettre, c'est la solution la plus simple, mais tu as l'embarras du choix

<!--StartFragment -->
<HR>

Cyril - http://Hoshimi.CodeS-SourceS.fr
0
moorice Messages postés 21 Date d'inscription vendredi 7 janvier 2005 Statut Membre Dernière intervention 24 février 2005
28 janv. 2005 à 10:07
Merci pour la reponse je ne connaissai pas ce controle et il ma l'air plus adapté a ce que je vais faire.
mais maintenant j'arrive pas a afficher les prénom en paragraphe en fonction de leur 1ere lettre.
Pour ton exemple avec le code ascii ca ne marche pas non plus, peut etre parce que g pas la bonne sintax c# mais ce n'est pas le plus important.
Si ta une idée....
Merci

un debutant
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
28 janv. 2005 à 12:32
la fonction Chr est une fonction VB ... je me rappelle plus de la syntaxe C#



pour ce qui est des prénoms tu fais comment ? tu les affiches sur
toutes les pages, ou seulement lorsqu'on est sur la page a,b,c, ...



car il suffit aussi de mettre un repeater si tu veux une presentation
personalisé, sinon un datalist, et pour la source de données, suffit de
mettre le datareader dessus et c'est bon.



si c'est toujours pas bon, dis moi montre moi avec un bout de code

<hr>

Cyril - http://Hoshimi.CodeS-SourceS.fr
0
moorice Messages postés 21 Date d'inscription vendredi 7 janvier 2005 Statut Membre Dernière intervention 24 février 2005
28 janv. 2005 à 15:24
En fait je veu afficher un truc comme ca sur une page du site web:

A-B-C-D... //ou chaque lettre est un lien avec le paragraphe correspondant

A: M:
albert arthur antoine ... Cyril,cyrielle.. //ou chaque prenom est un lien avec sa description

B: N:
bernard brigitte bastien... damien,danette...

... ...

En fait j'utilise un repeater mais tout les prenom se suivent et je ne sait comment les regrouper en fonction de leur premiere lettre. peut on utiliser des conditions avec un repeater?

Pour le code j'ai pas grand chose a part la connection en code behind et le repeater en html.
je cherche juste une facon de prog cette mise en page que g deja fait en asp mais en aspx avec VS je galere.
Merci pour ton temps
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
28 janv. 2005 à 17:48
Il faudrait mettre 26 repeater mais comme on est faineant ;) il va
falloir gerer les 26 repeaters dans le code, ensuite tu associes chaque
repeater avec ta requete, mais une requete plus "trié" tu n'as qu'a lui
rajouter where nom like a% je crois que c'est comme ca mais pas sur du
tout regarde sur sqlfr.Com pour la syntaxe de la requete SQL.



faire 26 repeater par le code ca peut etre pénible car relativement
complexe (je crois que j'ai fait une source la dessus et/ou j'en ai
parlé sur mon blog) donc tu peux aussi faire une datatable et te faire
deux boucle for imbriqué, ce sera surement plus simple si tu debutes.



Ou sinon regarde sur www.asp.net je pense qu'il doit y avoir un
datagrid qui gere tout ca automatiquement, qui met en haut la
liste alphabétique et qui trie la liste par la premiere lettre comme
ici : http://www.aspfr.com/catamembres.aspx (mais pas sur)


En tout cas il y a plein de facon de résoudre ton problème, une chose
est sur c'est que tu ne pourras pas faire directement le trie par
premiere lettre directement à partir de ton repeater.


<hr>

Cyril - http://Hoshimi.CodeS-SourceS.fr
0
moorice Messages postés 21 Date d'inscription vendredi 7 janvier 2005 Statut Membre Dernière intervention 24 février 2005
31 janv. 2005 à 08:55
Merci pour ton aide,


pour le sql tu as raison sauf que le a% c'est entre"".


Pour le reapeter je pense que je pourrai me debrouiller


bon prog et @+
0
Rejoignez-nous