2011-11-16 14 views
5

È possibile rendere fissa la prima colonna di SlickGrid? In modo che sia sempre visibile durante lo scorrimento orizzontale, come la riga di intestazione?SlickGrid con prima colonna fissa

Grazie per l'aiuto!

+0

quindi non ho trovato nulla nell'origine (versione SlickGrid v2.0 alpha). Forse la risposta è solo "no". – user1027167

+1

Questa è la risposta alla stessa domanda dall'autore SlickGrid qui: http://groups.google.com/group/slickgrid/browse_thread/thread/ba6a85279f3cfd5f – njr101

risposta

5

penso che si può fare nel caso in .onViewportChanged() i prossimi passi:

  1. ottenere le colonne con .getColumns() e memorizzato in una variabile di matrice arrColumns.
  2. Quindi rilevare la prima colonna.
  3. memorizzare i dati con .getData() in un array variabile arrData
  4. Ordina arrColumns mettendo prima colonna all'inizio.
  5. impostare le colonne della nuova arrColumns con .setColumns()
  6. riassemblaggio arrData con l'ordine del nuovo arrColumns.
  7. Chiama .resizeCanvas()
  8. Incrocia le dita. : D

Spiacente ma non trovo un metodo o un'opzione in quanto è possibile eseguire questo comportamento nel modo desiderato.

Bene, guarda cosa ne pensi di this. È tutt'altro che perfetto, ma è un'idea. Farei qualcosa di meglio se il metodo scrollTo() fosse pubblico.

+0

Grazie per le vostre considerazioni :) ma penso che non sia molto performante ... – user1027167

+0

Perché non provare e fare alcuni test? – Galled

+0

non molto performante perché devi gestire tutti i dati della griglia. problema successivo: lo scorrimento orizzontale viene eseguito pixel per pixel e non colonna per colonna. – user1027167

0

So che questo non soddisfa pienamente le vostre esigenze, ma è possibile evitare completamente lo scorrimento orizzontale impostando forceFitColumns su true nell'oggetto opzioni.

Suppongo che questo comportamento sarebbe indesiderabile per gli utenti con uno schermo molto piccolo.

+0

No, ha bisogno di qualcosa come i riquadri di selezione in Excel. – Galled

+1

Quindi la prima frase nella mia risposta ... – vemv

11

C'era un altro collegamento al forum (non lo trovo ora) che mi porta a JLynch's fork. Mantiene sia un tag 1.4.3 con le sue patch per colonne e righe congelate, sia mantenendo una 2.0 head. Ecco l'esempio 2.0 con entrambi frozen rows and columns.

In questo esempio, l'autore utilizza un paio di ulteriori opzioni di proprietà:

 ,topPanelHeight: 25 
     ,frozenColumn: 2 
     ,frozenRow: 5 

Speriamo che questo fa ciò che si vuole, senza dover incidere troppo sul core!

+0

suo slickgrid.js diverso con normale, difficile fare qualche aggiornamento con la nuova versione di slickgrid. Dovremmo trovare un altro modo. – Stiger

Problemi correlati