Collocare un valore in una specifica colonna

mercoledì 27 settembre 2006 - 21.38

ricky Profilo | Junior Member

Ciao, ho un datagrid che contiene 4 colonne... il datagrid viene alimentato
tramite .DataSource = MioDataSet

io vorrei però fare in modo che il valore presente nel dataset sia visualizzato
in una specifica cella (per ogni record) in funzione dell'appartenenza ad
uno specifico range, esempio:

se il valore è da 0 a 10, visualizzalo nella prima cella
se il valore è da 11 a 20, visualizzalo nella seconda cella

come potrei fare?

Grazie

alx_81 Profilo | Guru

>Ciao,
Ciao
> ho un datagrid che contiene 4 colonne... il datagrid viene
>alimentato
>tramite .DataSource = MioDataSet
>
>io vorrei però fare in modo che il valore presente nel dataset
>sia visualizzato
>in una specifica cella (per ogni record) in funzione dell'appartenenza
>ad
>uno specifico range, esempio:
>
>se il valore è da 0 a 10, visualizzalo nella prima cella
>se il valore è da 11 a 20, visualizzalo nella seconda cella
>
>come potrei fare?

Ti consiglio di utilizzare l'evento ItemDataBound del datagrid che ti permette di gestire la "riga" (item) proprio del tuo datagrid.
Questo evento viene lanciato per ogni riga della griglia ed in questo modo puoi controllare che un particolare valore presente su di una cella rispetti le tue condizioni per ottenere la visualizzazione desiderata.
>
>Grazie
Di nulla
Ciao!
Alx81 =)

http://blogs.dotnethell.it/suxstellino

freeteo Profilo | Guru

ciao,
concordo con la soluzione di Alx, cmq io ti proverei con 2 colonne calcolate da aggiungere alla datatable del dataset, dove metti come espressione i 2 confronti:

miatabella.Columns.Add("colonna1", typeof(string), "Iif(valore<10 ,valore, '')");
miatabella.Columns.Add("colonna2", typeof(string), "Iif(valore>10 and valore<15 ,valore, '')");

cosi' ti viene visualizzato dentro senza fare nessun codice, lo fa ado.net quando generi la tabella, tu basta solo che la binda alla griglia...
ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

ricky Profilo | Junior Member

Grazie ad entrambi, per quanto riguarda la prima soluzione, vorrei capire come collocare un valore in una specifica cella usando l'itemdatabound (intendo come gestire le varie colonne)... per quanto riguarda la seconda soluzione, mi sembra piu semplice ma ho un problema: il mio range non è fisso ma varia in funzione di quanto indicato nella mia tabella, mi spiego:

le 4 colonne sarebbero: suff discr buono ottimo

in una tabella di anagrafica ho i range (che ripeto, potrà variare) per entrare nelle colonne suff, discr, buono, ottimo...

la mia query mi ritorna un valore ed io devo collocarlo nella cella adatta in base alla collocazione nei vari range indicati precedentemente

Cosa mi consigliate di fare?
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-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5