C# elenco alfabetico

venerdì 07 dicembre 2007 - 09.56

Dj_luca87 Profilo | Newbie

Salve a tutti nella mia piccola applicazione fatta in c# dovrei creare un'elenco alfabetico che parte dalla A alla Z il mio problema e che selezionando la lettera dell'alfabeto lui dovrebbe darmi l'elenco di nomi inizianti con quella lettera Esempio se io clicco sulla B dovrebbe uscirmi barca,biro,borsa ecc..Chi mi puo aiutare????
dj_luca

alx_81 Profilo | Guru

>Salve a tutti
Ciao!

>nella mia piccola applicazione fatta in c# dovrei
>creare un'elenco alfabetico che parte dalla A alla Z il mio problema
>e che selezionando la lettera dell'alfabeto lui dovrebbe darmi
>l'elenco di nomi inizianti con quella lettera Esempio se io clicco
>sulla B dovrebbe uscirmi barca,biro,borsa ecc..Chi mi puo aiutare????

ci sono varie soluzioni, puoi fare un dropdown che contiene tutte le lettere e poi al change popola un datagrid con la query filtrata.
Ma tu come lo vuoi?

Alx81 =)

http://blogs.dotnethell.it/suxstellino

0v3rCl0ck Profilo | Guru

Ciao,

i dati dell'elenco da dove li leggi, da database?


http://blogs.dotnethell.it/Regulator/

Dj_luca87 Profilo | Newbie

Allora non lo so volevo trovare prima la soluzione più comoda e poi decidere se metterli in un database
dj_luca

Dj_luca87 Profilo | Newbie

Non sarebbe più comodo usare degli hyperlink...Grazie dell'aiuto
dj_luca

alx_81 Profilo | Guru

>Allora non lo so volevo trovare prima la soluzione più comoda e poi decidere se metterli in un database
se le cose che devi cercare sono statiche e non hai altre info relative al progetto su database, puoi anche scegliere di usare un supporto diverso, come ad esempio XML..
Però, sarò di parte, ma lo metterei su db, almeno access, per poter gestire eventuali crescite e controllare in maniera relazionale le informazioni..

>Non sarebbe più comodo usare degli hyperlink...Grazie dell'aiuto
Ti chiedevo come lo vorresti proprio per questo, se ritieni che gli hyperlink possano essere migliori, non c'è problema. La scelta sta solo nello stile a mio avviso.



Alx81 =)

http://blogs.dotnethell.it/suxstellino

Dj_luca87 Profilo | Newbie

Allora vorrei usare degli hyperlink rimane sempre il broblema come faccio???
dj_luca

alx_81 Profilo | Guru

>Allora vorrei usare degli hyperlink rimane sempre il broblema
>come faccio???
Allora, è una risposta un po' articolata. E a questo punto scelgo i requisiti io perchè mi dai tanta libertà :

requisiti:
- database free (ad esempio SQL Server 2005 Express)

su sql 2005 fai la tabella coi suoi contenuti (quella su cui devi fare le ricerche)
fai un indice sul campo che cerchi (o sui campi)
sempre su sql 2005 fai una stored procedure che fa la ricerca in base ad un parametro (l'hyperlink, per intenderci).

Per fare gli hyperlink, a questo punto, puoi farli statici e mettere le lettere che ti interessano sulla pagina.
Poi, al click dell'hyperlink gestisci l'evento e chiami la stored procedure con il parametro passato dall'hyperlink.
Il datasource tornato (ad esempio un datatable) lo imposti come sorgente del DataGrid che avrai opportunamente posizionato sulla pagina.
Ora, capisci bene che per spiegare tutte queste cose ci vorrebbe molto di più, ma ti invito a documentarti per ogni punto.
E vedrai che la soluzione è molto semplice, io ti ho illustrato una possibile strategia.
noi siamo qui se hai bisogno, ciao!

Alx81 =)

http://blogs.dotnethell.it/suxstellino

Dj_luca87 Profilo | Newbie

Scusa mi sono dimenticato di dirti uso un db access,come soluzione mi sembra molto complessa
dj_luca

alx_81 Profilo | Guru

>Scusa mi sono dimenticato di dirti uso un db access,come soluzione
>mi sembra molto complessa
Ehm, non vorrei essere scortese.. Ma non mi sembra complessa.
Dipende da quanto tu conosci del mondo .net.
Comincia col guardarti il datagrid, crearne uno è molto semplice .

DATAGRID CLASS
http://msdn2.microsoft.com/en-us/library/system.web.ui.webcontrols.datagrid.aspx

Se usi access, basta fare una query di ricerca con parametri (i classici ?) e poi gestirli da codice con l'oggetto OLEDBCommand.
http://msdn2.microsoft.com/en-us/library/system.data.oledb.oledbcommand_members(VS.71).aspx
http://msdn2.microsoft.com/en-us/library/system.data.oledb.oledbcommand.commandtext(VS.71).aspx
http://msdn2.microsoft.com/en-us/library/system.data.oledb.oledbcommand.parameters(VS.71).aspx



Alx81 =)

http://blogs.dotnethell.it/suxstellino

Dj_luca87 Profilo | Newbie

Diciamo che non sono un mostro ma me la cavicchio...stavo pensando ad un'altra soluzione le parole le metto dentro una label e la imposto come visible false,poi appena clicco sul link si imposteranno a visible true è sbagliata come soluzione
dj_luca

0v3rCl0ck Profilo | Guru

Ma....fare una <asp:repeater> di hyperlink? sul click dell'hyperlink popoli un <asp:datagrid> con la lista filtrata attraverso una query a DB? In entrambi i casi sarebbe sufficiente avere un DataSource (datatable, array, ecc...), impostare la proprietà DataSource del repeater/datagrid e invocare il metodo DataBind(). Sono 4 righe di codice!


P.S.: se usi il framework 2.0 puoi prendere in considerazione un GridView con un DetailsView.

http://blogs.dotnethell.it/Regulator/

alx_81 Profilo | Guru

>Diciamo che non sono un mostro ma me la cavicchio...stavo pensando
>ad un'altra soluzione le parole le metto dentro una label e la
>imposto come visible false,poi appena clicco sul link si imposteranno
>a visible true è sbagliata come soluzione
Non posso dirti se è sbagliata perchè mi mancano alcune cose sulla tua problematica, però è profondamente statica la tua gestione, quindi non so, come dice 0v3rcl0ck, preferirei il dinamismo e le righe di codice, che sono proprio poche da aggiungere.
Non posso dirti se è sbagliata ma non approccerei col tuo metodo.

@0v3rc0ck
Sono d'accordo con te è di semplice gestione la problematica.

Alx81 =)

http://blogs.dotnethell.it/suxstellino

Dj_luca87 Profilo | Newbie

Allora ho seguito il tuo consiglio ho usato un db e ho impostata una gridwiev per visualizzare i dati ora faro una query usando l'operatore like
dj_luca

alx_81 Profilo | Guru

ok, facci sapere
Alx81 =)

http://blogs.dotnethell.it/suxstellino
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5