Le drop-down list

Navigation:  I Viewer: esposizione dei dati > Il Viewer Grid > Le Property di una Grid > Esempi di Grid Property >

Le drop-down list

Previous pageReturn to chapter overviewNext page

Una drop-down list è un controllo grafico che permette all'utente di selezionare un valore da una lista. In un Viewer di tipo Grid è possibile associare drop-down list, estratta da una tabella del Model, alle celle di una colonna mediante opportune Grid e Band Property.

 

warning

Una drop-down è in realtà una Grid incapsulata all’interno del Viewer principale. In particolare essa dispone degli stessi strumenti di personalizzazione di una Grid costituita da una sola Band.

 

La Grid Property DropDownList consente di accedere ad un editor dedicato alla definizione di collezioni di drop-down list da associare alle celle di una Grid. Tale editor si compone di due riquadri principali:

Members, contenente l'elenco delle drop-down list disponibili;

Properties, esponente gli aspetti definitori di ogni singola drop-down list.

I tasti Add, Remove, Copy e Paste, sotto il riquadro Members, consentono di aggiungere o rimuovere e copiare o incollare drop-down list nell'elenco sovrastante.

 

I principali aspetti definitori di una drop-down list, configurabili dal riquadro Properties, sono:

DataMember, nome dell’oggetto del Model contenente i valori da esporre nella lista;

DisplayMember, campo del DataMember contenente i valori da esporre a video;

ValueMember, campo del DataMember contenente i valori a cui la lista viene agganciata;

Key, identificativo della drop-down list corrente;

Filter, condizione logica mediante la quale filtrare il DataMember;

DisplayLayout, classe di proprietà grafiche con cui configurare l’aspetto della drop-down list.

 

info

È possibile associare un’immagine ad ogni record di una drop-dpwn list, impostando la proprietà Image della classe DisplayLayout.

 

Il DisplayMember condiziona soltanto i valori esposti dalla drop-down list, mentre l’effettivo contenuto è rappresentato dal ValueMember.

 

La condizione logica con cui valorizzare la proprietà Filter assume la forma DataMemberColumn = Value dove:

DataMemberColumn è il nome di un qualsiasi campo del Data Member, in funzione del quale filtrare i dati da esporre nella lista;

Value è il valore, assunto dalla DataMemberColumn, in base al quale filtrare i dati da esporre nella lista.

Il Value, da inserire nella condizione logica della proprietà Filter, può assumere le seguenti forme:

@GridColumnName, nome di un campo della Grid, ospitante la drop-down list corrente;

[Grid Column Name], nome della colonna della tabella sottostante alla drop-down list corrente;

NULL, valore costante NULL;

CustomValue, valore costante a scelta dell'utente.

 

info

I valori @GridColumnName e [Grid Column Name] identificano entrambi un campo della Grid, ospitante la drop-down list corrente. La prima formulazione si utilizza in caso di nomi di colonna privi di spazi, la seconda in caso di nomi di colonna contenenti spazi.

 

 

warning

Il campo DataMemberColumn non deve essere quotato, Se inoltre è presenete un filtro con una costante, essa non deve essere quotata anche se si tratta di una stringa.

 

Infine un terzo riquadro nell'editor delle drop-down list espone alcuni record della tabella del Model scelta come DataMember.

 

Per visualizzare una drop-down list su una colonna occorre assicurarsi che:

l’oggetto del Model associato alla Grid corrente sia in EditMode Simple o Full;

la Band Property AllowUpdate (classe Override) sia impostata a True;

la Column Property CellActivation sia impostata a AllowEdit.

Inoltre il Chapter a cui appartiene il DataMember della drop-down list deve, alternativamente:

coincidere con quello a cui appartiene il DataMemeber della Grid;

essere eseguito prima o contemporaneamente al Chapter a cui appartiene il DataMemeber della Grid.

 

Infine, per associare una drop-down list alle celle di una particolare colonna, è necessario valorizzare la Column Property DropDown. Essa permette di selezionare un qualunque elemento della collezione di drop-down list corrente, mediante l'opportuna Key.