Griglia dati

BrowseName: DataGrid
SuperType: Elemento (Item)
Percorso nella TypeView: Tipi > UI > Controlli dati > Griglia dati

Tabella che presenta dati ricavati da nodi del progetto o da una o più tabelle di un database.

Come si presenta

../../../_images/ref_DataGrid_ex.gif

Applicazioni

Usato tipicamente per visualizzare dati in formato tabellare: testi, testi modificabili o immagini.

Ogni riga della tabella presenta i dati di un diverso nodo del progetto o di una diversa riga di una tabella di un database.

Configurare l’oggetto

Impostare la sorgente dei dati

Nella proprietà Modello impostare un collegamento dinamico con il nodo padre dei nodi di progetto di interesse o un collegamento dinamico con un oggetto di tipo database:

  • Se si imposta un collegamento con un nodo padre, i dati visualizzabili sono i valori degli attributi o delle proprietà di tutti i nodi direttamente figli e del tipo indicato nella proprietà ItemKind. Tipicamente ci si riferisce a una collezione di oggetti con modello informativo uguale o simile… note:: Q Studio imposta automaticamente la proprietà ItemKind con il tipo di oggetto/variabile riconosciuto tra i nodi figli. Per esempio, se il modello è basato su un nodo cartella che contiene diverse istanze di un tipo di oggetto Motor, ItemKind viene automaticamente impostata con il riferimento al tipo Motor. In questo caso i valori visualizzabili nelle diverse colonne sono i valori degli attributi o delle proprietà delle diverse istanze (Motor1, Motor2, Motor3…).

  • Se si imposta un collegamento con un oggetto di tipo database, i dati visualizzabili sono i valori contenuti nelle sue tabelle.

Impostare i dati da visualizzare in colonna

Per ogni dato da visualizzare, configurare una diversa colonna come di seguito:

  1. Fare clic su + in prossimità di Columns e scegliere il tipo di colonna.

  2. In DataItemTemplate, nella proprietà Testo o Percorso, tramite collegamento dinamico, impostare il dato da visualizzare.

Se la sorgente dei dati è…

Allora nella finestra dei collegamenti dinamici…

un modello di nodi

in Alias > {Item}(object path) è disponibile l’alias dell’oggetto impostato in ItemKind. Selezionare l’attributo o la proprietà desiderata, poi fare clic su Seleziona.

un oggetto di tipo database

in Alias > {Item}(object path) > PointedNode scrivere il nome della colonna desiderata della tabella del database, poi fare clic su Seleziona.

Impostare l’ordinamento dei dati

A seconda della sorgente dati, di default le righe sono disposte nello stesso ordine con cui sono disposti i nodi nel modello o le righe nelle tabelle del database.

Per rendere ordinabili i dati di una colonna a runtime in modo crescente e decrescente è necessario impostare la proprietà Ordina per di tale colonna.

Se la sorgente dei dati è…

Allora il valore della proprietà Ordina per è…

un modello di nodi

un riferimento a un attributo o a una proprietà del nodo del modello.

un oggetto di tipo database

un riferimento a una colonna di una tabella.

L’ordinamento può essere quindi determinato da dati diversi da quelli visualizzati nella griglia a runtime. Se non si ha questa necessità, impostare Ordina per con lo stesso attributo/proprietà o colonna da cui sono ricavati i dati.

Visualizzare i dati in tempo reale a runtime

Quando i dati sono ricavati da tabelle di un database, per visualizzare dati aggiornati in tempo reale, per esempio quando si visualizzano dati campionati da un Data logger, configurare l’invocazione del metodo Aggiorna esposto dall’oggetto Griglia dati. Tipicamente si associa questo metodo a un evento di un oggetto Pulsante.

Proprietà

Nome

BrowseName

DataType

Descrizione

Modello

Model

NodeId

Riferimento al modello informativo o al database da cui ricavare i dati

Query

Query

String

Query SQL standard per filtrare i dati di interesse. Può essere usata sia per filtrare dati di un database che per filtrare dati ricavati da un modello basato su nodi. Nel caso di modello basato su nodi, è obbligatoria la parte SELECT * FROM Model, seguita dalla clausola WHERE con cui indicare le condizioni di ricerca - es.: SELECT * FROM Model WHERE Speed > 40.

Item selezionato

SelectedItem

NodeId

Elemento selezionato quando l’oggetto viene inizializzato a runtime (se vuota viene inizializzato senza selezioni). Dopo l’inizializzazione, questa proprietà espone il nodo corrispondente all’elemento selezionato (l’accesso alla proprietà è sia in lettura che scrittura quando i dati sono ricavati da nodi di progetto, in sola lettura quando sono ricavati da un database).

Item UI selezionato

UISelectedItem

NodeId

Permetti deselezione

AllowDeselection

Boolean

Colonna di ordinamento

SortColumn

NodeId

Colonna di ordinamento predefinita

Direzione ordinamento

SortOrder

SortOrderEnum

Ordinamento predefinito, crescente o decrescente, degli elementi

Columns

Columns

Collezione di DataGridColumn

Colonne da visualizzare in un oggetto Griglia dati.

ViewModels

ViewModels

Oggetto

Visibilità

Visible

Boolean

Mostra/nasconde la finestra.
(Ereditato da Elemento)
Abilitato

Enabled

Boolean

Abilita/disabilita l’interazione da parte dell’utente (Vero = abilitato, Falso = disabilitato).
(Ereditato da Elemento)
Opacità

Opacity

Float

Livello di opacità (0 = trasparente)
(Ereditato da Elemento)
Margine sinistro

LeftMargin

Size

(Solo se Allineamento orizzontale = Sinistra o Centro o Adatta) Distanza tra il bordo sinistro dell’oggetto e il bordo sinistro del suo contenitore.
(Ereditato da Elemento)
Margine superiore

TopMargin

Size

(Solo se Allineamento verticale = Superiore o Centro o Adatta) Distanza tra il bordo superiore dell’oggetto e il bordo superiore del suo contenitore.
(Ereditato da Elemento)
Margine destro

RightMargin

Size

(Solo se Allineamento orizzontale = Destra o Centro o Adatta) Distanza tra il bordo destro dell’oggetto e il bordo destro del suo contenitore.
(Ereditato da Elemento)
Margine inferiore

BottomMargin

Size

(Solo se Allineamento verticale = Inferiore o Centro o Adatta) Distanza tra il bordo inferiore dell’oggetto e il bordo inferiore del suo contenitore.
(Ereditato da Elemento)
Larghezza

Width

Size

Larghezza della finestra. Può assumere valori maggiori o uguali a zero. Il valore Auto imposta la larghezza uguale alla larghezza del contenuto (in questo caso, in mancanza di contenuto l’oggetto collassa).
(Ereditato da Elemento)
Altezza

Height

Size

Altezza della finestra. Può assumere valori maggiori o uguali a zero. Il valore Auto imposta l’altezza uguale all’altezza del contenuto (in questo caso, in mancanza di contenuto l’oggetto collassa).
(Ereditato da Elemento)
Allineamento orizzontale

HorizontalAlignment

HorizontalAlignment

Allineamento dell’oggetto sull’asse orizzontale. Sinistra = il lato sinistro viene posizionato sul lato sinistro del contenitore, a meno di margine sinistro; Destra = il lato destro viene posizionato sul lato destro del contenitore, a meno di margine destro; Centro = il centro dell’oggetto viene posizionato al centro del contenitore, a meno di margini sinistro e/o destro; Adatta = la larghezza dell’oggetto equivale alla larghezza del contenitore, a meno di margini sinistro e/o destro.
(Ereditato da Elemento)
Allineamento verticale

VerticalAlignment

VerticalAlignment

Allineamento dell’oggetto sull’asse verticale. Superiore = il lato superiore viene posizionato sul lato superiore del contenitore, a meno di margine superiore; Inferiore = il lato inferiore viene posizionato sul lato inferiore del contenitore, a meno di margine inferiore; Centro = il centro dell’oggetto viene posizionato al centro del contenitore, a meno di margini superiore e/o inferiore; Adatta = l’altezza dell’oggetto equivale all’altezza del contenitore, a meno di margini superiore e/o inferiore.
(Ereditato da Elemento)
Rotazione

Rotation

Size

Rotazione dell’oggetto rispetto al suo centro. I valori positivi indicano gradi sessagesimali in senso orario.
(Ereditato da Elemento)

Metodi

Aggiorna

BrowseName: Refresh

Eventi

Selezione modificata

BrowseName: UserSelectionChanged