Caisis Input Controls&action it

From CaisisWiki

Revision as of 09:17, 15 September 2008 by A.fraietta (Talk | contribs)
(diff) ← Older revision | Current revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Traduzione a cura di Andrea Fraietta


Contents

Introduzione

In questa sezione vengono descritti i controlli di input di Caisis che costituiscono i controlli base dell'interfaccia utente all'applicazione, che si appoggiano ai controlli standard previsti da .NET controls, quali TextBoxes, TextAreas, CheckBoxes, RadioButton, DropDownList, etc... Questi controlli forniscono proprietà utili applicabili ai vari elementi dell'interfaccia (calendari, tastierini numerici, icone, descrizioni...) con poca attività di programmazione.

I controlli di input di Caisis forniscono proprietà addizionali per facilitare la loro associazione con i Business Objects. Proprietà quali Table e Field facilitano l'associazione del valori dei controlli ai rispettivi nomi di campi e tabelle associati del database.

Interfacce


ICaisisInputControl

L'interfaccia denominata ICaisisInputControl fornisce gli elementi più comuni attraverso proprietà e fornisce supporto per trattare l'associazione con i campi dei [Business Object] correlati. Controlli implementati da ICaisisInputControl

  • CaisisTextBox
  • CaisisTextArea
  • CaisisSelect
  • CaisisHidden
  • CaisisCheckBox
  • CaisisComboBox
  • CaisisRadioButton
  • CaisisRadioButtonList
  • CaisisExtendedCheckBoxList
  • CaisisExtendedRadioButtonList

ICaisisLookupControl

L'interfaccia denominata ICaisisLookupControl fornisce un accesso facilitato per legare i controlli ai LookupCodes, come definito dall'amministratore. Esistono anche proprietà addizionali utilizzate per creare codici di lookup dinamici basati su valori scelti dall'utente.

Controls Implementing ICaisisLookupControl

  • CaisisSelect
  • CaisisComboBox

Proprietà di base


Per default, tutti i controlli implementati dall'interfaccia ICaisisInputControl, hanno tutte le proprietà esposte in modo da essere settate e trovate per codice utente. Queste proprietà forniscono un accesso facilitato a molti controlli dell'interfaccia utente, assieme a proprietà di database quali Table e Field, che consentono il collegamento con i Business Objects.

Table (string)

Il nome della tabella di database corrispondente al controllo.

Field (string)

Il nome del campo della tabella del database corrispondente al controllo.

Value (string)

Questo è il corrispondente valore di "text" di un controllo derivato. Quindi, per TextBox il campo Value si riferisce al valore del TextBox, della TexArea, del DropDownList, del SelectedValue.

Visible (boolean)

Il nome della tabella di database corrispondente al controllo.

FieldLabel (string)

Il nome da visualizzare dopo il controllo.

Required (boolean)

Indica se questo campo è obbligatorio nei moduli di data entry.

ShowHelpBubble (boolean)

Valore True o False che indica se visualizzare un help per il controllo.

HelpDescription (string)

Descrizione di help visualizzata per il controllo.

ShowLabel (boolean)

Valore True o False che indica se visualizzare il controllo.

Enabled (boolean)

Valore True o False che indica se abilitare la modifica del controllo.

CssClass (string)

Nome della classse del CSS (foglio di stile) da applicare al controllo.

Proprietà estese


Le seguenti proprietà sono esposte dai controlli implementati nell'interfaccia ICaisisLookupControl. Ciò fornisce un accesso facilitato al collegamento con i Lookup Codes ed ai relativi valori collegati attraverso i relativi controlli.

LookupCode (string)

Il codice utilizzato per cercare i risultati dal database.

LookupDistinct (string)

Controlli che filtrano i valori di lookup.

CascadeValuesBasedOn (string)

(Avanzato) Combinato con il CascadeFormatString, i lookup codes per un controllo sono generati al volo (client-side tramite javascript,CaisisComboBox), o tramite eventi AutoPostBack (via server,CaisisSelect). Questa proprietà prende una lista di campi separati da virgola. Solo quando i codici di lookup sono richiesti (all'evento click su un combo box), i valori vengono estratti dai campi correlati del database per costruire dinamicamente i codici di lookup richiesti al server.

CascadeFormatString (string)

(Avanzato) Specifica il formato dei codici di lookup dinamici, basato sui valori del controllo associato (CascadeValuesBasedOn). Il formato è simile a quello della C# String. Metodo del formato dove la stringa "mio primo valore: {0} e secondo valore: {1}" vedranno {0} e {1} sostituiti con un array di valori, basato su un indice 0-n. In questo caso, l'array di valori è determinato dai controlli referenziati(per nome di Field) nel CascadeValuesBasedOn. Oltre ad utilizzare gli indici dei relativi controlli, è anche possibile usare il prefisso n. per estrarre un numero di valori di controllo. Di seguito un esempio su come questa proprietà interagisce con il CascadeValuesBasedOn.

Esempio:

Supponiamo di avere il campo ClinStageT rappresentato dal controllo CaisisComboBox.

Nello stesso form ci sono anche due CaisisSelect(DropDownList) per rappresentare i Field ClinStageDisease e ClinStageSystem.

Impostiamo ora le seguenti proprietà:

  • CascadeValuesBasedOn="ClinStageDisease,ClientStageSystem"
  • CascadeFormatString="StageClin_{0}_{n.1}_T"

Quando cambiamo i valori di ClinStageDisease o di ClinStageSystem, i codici di lookup che il ComboBox ClinStageT genera sono basati su sue valori osservati. Così se selezioniamo Prostate per il ClinStageDisease, e scegliamo UICC_02 per ClinStageSystem, andremo a generare un codice di lookup "StageClin_Prostate_02_T", in quanto il "Value" di ClinStageDisease è "Prostate" e il "Value" di ClinStageSystem è "UICC_02". Estraiamo solo il numero di valori di ClinStageSystem, in quanto il nostro formato di stringa è impostato per un parse di un numero, "{n.1}" dal valore dell'indice 1.

NOTE: Se il controllo che utilizza queste proprietà e una CaisiSelect, ogni cambiamento di valore osservato, darà luogo ad una interrogazione al server, fornendo i relativi risultati di ritorno. Tuttavia i CaisisComboBoxes non rieseguono l'interrogazione, in quanto i valori sono generati via javascript e sono acquisiti tramite CallBacks lato client, per cui non c'è da preoccuparsi circa il ritorno dei valori. Se non siete sicuri, i CaisisComboBoxes forniscono sempre il metodo migliore per trattare i codici di lookup dinamici. I controlli che vengono osservati (CascadeValuesBasedOn) possono essere qualsiasi tipo di controllo, anch e un CaisisSelect.

Personal tools