Autore Topic: Gridview con due righe nell'Header  (Letto 5365 volte)

Offline clabe69

  • Gambero
  • **
  • Post: 50
    • Mostra profilo
Gridview con due righe nell'Header
« il: 28 Settembre 2012, 18:05:27 »
Salve; sapete come si può intestare una gridview con due righe?
Io ho provato così:

Codice: gambas [Seleziona]

  WITH GridView1
    .Columns.Count = 2
    .Columns[0].Text = "Nome"
    .Columns[0].Width = 200
    .Columns[1].Text = "Prezzo\nd'acquisto"
    .Columns[1].Width = 200
  END WITH


Funziona per metà: scrive su due righe ma non ridimensiona l'altezza dell'intestazione.

Grazie.

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.309
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #1 il: 28 Settembre 2012, 19:33:59 »
Io ho provato il tuo codice, ma non vedo alcuna riga o colonna.

Per far apparire l'Header della GridView ho dovuto anche inserire la riga:
Codice: gambas [Seleziona]

   .Header = 1



Riguardo alla possibilità di impostare l'altezza dell'Header, non mi sembra sia possibile. Uno stratagemma, però, potrebbe adottarsi mediante l'aggiunta di caratteri escape.
Facciamo in modo che nel tuo esempio la parola "Nome", posta nella prima colonna dell'Header abbia maggiore distanza sia dal limite superiore sia da quello inferiore della cella, nella quale esso è contenuto. Agiremo così:
Codice: gambas [Seleziona]

With GridView1  
  .Columns.Count = 2  
  .Header = 1
       .Columns[0].Text = "\nNome\n"  
  .Columns[0].Expand = True  
  .Columns[1].Text = "Prezzo\nd'acquisto"  
  .Columns[1].Width = 200
 End With



Le uniche alternative alla soluzione con i caratteri escape, se è proprio indispensabile modificare l'altezza dell'Header, mi sembrano  :-\ essere attualmente solo le seguenti:

1) eliminare l'Header e gestire la prima riga in alto come una qualsiasi riga della GrieView, magari imitando il colore dell'Header o attribuendone addirittura un altro. In questo caso per modificare l'altezza di questa prima riga... pseudo-Header si potrà agevolmente usare il metodo Rows[0].Height = ;
2) ...costruirsi da capo una griglia mediante il codice html.
« Ultima modifica: 28 Settembre 2012, 20:46:04 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #2 il: 28 Settembre 2012, 20:33:28 »
a me con questo funziona benissimo:
Codice: [Seleziona]
PUBLIC SUB Form_Open()
GridView1.Columns.Count = 2
 GridView1.Columns[0].Text = "pippo\npluto"
 GridView1.Columns[1].text = "ciao"
END

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.309
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #3 il: 28 Settembre 2012, 20:40:16 »
a me con questo funziona benissimo:
Codice: [Seleziona]
PUBLIC SUB Form_Open()
GridView1.Columns.Count = 2
 GridView1.Columns[0].Text = "pippo\npluto"
 GridView1.Columns[1].text = "ciao"
END

...forse si spalanca la porta di un nuovo mistero, poiché a me - non ne capisco la ragione - non funziona. Appare la gridview, ma senza alcuna colonna !   :-\ Sono costretto a porre almeno una riga o l'Header.
« Ultima modifica: 28 Settembre 2012, 20:45:12 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #4 il: 28 Settembre 2012, 21:06:26 »
stranissimo, ma tu stai usando g2?
cmq a me appare così:

Offline clabe69

  • Gambero
  • **
  • Post: 50
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #5 il: 28 Settembre 2012, 23:59:56 »
Citazione
cmq a me appare così:
Coma hai fatto?

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.309
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #6 il: 29 Settembre 2012, 01:19:54 »
stranissimo, ma tu stai usando g2?
No, io uso Gambas-3.
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline clabe69

  • Gambero
  • **
  • Post: 50
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #7 il: 29 Settembre 2012, 10:03:34 »
Io uso Gambas 2 e mi fà così:


Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.309
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #8 il: 29 Settembre 2012, 14:38:15 »
Io uso Gambas 2 e mi fà così:
Prova a piazzare un carattere escape \n prima e dopo le parole "Quantità minima", e facci sapere come va.
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline clabe69

  • Gambero
  • **
  • Post: 50
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #9 il: 29 Settembre 2012, 16:02:30 »
Si sposta la scritta più giù, ma l'altezza dell'intestazione rimane sempre quella, ho provato anche a usare invece di \n, gb.newline, ma il risultato non cambia.

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.309
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #10 il: 29 Settembre 2012, 16:17:33 »
Si sposta la scritta più giù, ma l'altezza dell'intestazione rimane sempre quella, ho provato anche a usare invece di \n, gb.newline, ma il risultato non cambia.
Forse è dato dal fatto che usi Gambas-2...

Ad ogni modo, scusa, se inserisci anche questa riga:
Codice: gambas [Seleziona]

   .Rows[0].Height = 100

cosa succede ?
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Picavbg

  • Senatore Gambero
  • ******
  • Post: 1.620
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #11 il: 29 Settembre 2012, 16:19:53 »
Io uso Gambas3 e il problema che ha clabe69  ce l'ho anch'io. Quello che manca è la possibilità di potere indirizzare la riga header di Griodview. Infatti se voglio modificare l'altezza di una riga di dettaglio qualsiasi, basta scrivere:

Codice: [Seleziona]
 GridView.Rows[x].Height = 52       'x può variare da 0 al n° massimo di riga di dettaglio dichiarato in  [i]GridView.Rows.count = nnn"[/i]

Dovrebbe essere possibile, attraverso la dichiarazione di una proprietà per la riga di testata, richiamandola poi all'occorrenza, come viene indicato qui
ma ora come ora non saprei come riuscirvi.
:ciao:

Offline clabe69

  • Gambero
  • **
  • Post: 50
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #12 il: 29 Settembre 2012, 17:05:32 »
Citazione
Ad ogni modo, scusa, se inserisci anche questa riga:
Succede che si alza la riga 0 a 100, ma non l'intestazione.

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.309
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #13 il: 29 Settembre 2012, 19:24:36 »
Succede che si alza la riga 0 a 100, ma non l'intestazione.
...e allora non saprei cosa dirti.......
Forse, come ti avevo già accennato sopra, per ora, dato che non va bene neppure con l'escape \n, ti resterebbe di trasformare la prima riga, ossia: .Rows[0], in uno pseudo-Header dandogli il colore che vuoi ed impostando così la sua altezza con la proprietà: .height...  :-\

Ad ogni modo ho posto questo problema dell'altezza del'Header anche nella mailing List Intgernazionale.... vediamo cosa rispondono.
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.309
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Gridview con due righe nell'Header
« Risposta #14 il: 02 Ottobre 2012, 01:05:39 »
Ad ogni modo ho posto questo problema dell'altezza del'Header anche nella mailing List Intgernazionale.... vediamo cosa rispondono.
...ad oggi non ha ancora risposto nessuno. Ho paura che - come si sospettava - non c'è verso di modificare l'altezza dell'Header mediante un'apposita proprietà...  :-X
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »