Aggiungere attributo al pager del gridView

martedì 13 ottobre 2009 - 16.08

sergio.mitrione Profilo | Junior Member

Ciao a tutti,
vorrei inserire un attributo al pager del mio gridView...
sapete come posso fare?

per gli altri componenti del gridview utilizzo una cosa del tipo
e.row.cell(0).attributes.add("onclick","alert('ciao');")

ma per il pager non so come fare...

Gluck74 Profilo | Guru

dipende da cosa devi fare.
considera che "e.row.cell(0)" è una semplice cella di una tabella, quindi esiste l'attibuto "onclick".

mentre il pager è un oggetto complesso.
cosa devi fare?

sergio.mitrione Profilo | Junior Member

Ciao,
dovrei ogni volta che viene premuto inserire del testo in una label
perchè il refresh risulta un pò oneroso ...
sapresti come aiutarmi per favore?

grazie

samar Profilo | Senior Member

Se intercettassi l'evento PageIndexChanging del Gridview e da li cambiassi la tua label?

sergio.mitrione Profilo | Junior Member

ci ho già pensato ma a me servirebbe
che venisse aggiornata la label appena viene
cliccato il pager...

Gluck74 Profilo | Guru

allora in questo caso ti devi affidare a javascript.
e cosa devi mettere nella label?

sergio.mitrione Profilo | Junior Member

lo so che devo farlo in javascript ma non trovo un metodo tipo
attribute.add

devo mettere un qualsiasi testo, l'importante
che venga fuori appena clicco su uno dei numeri
della paginazione

Gluck74 Profilo | Guru

tanto per capirci, usi 2.0 o 3.5?
perché cambia il tipo di pager.

quindi utilizzi la paginazione interna al gridview, o usi il controllo pager del 3.5?

sergio.mitrione Profilo | Junior Member

la pagina interna del gridview...

già che ci sei...sai per caso come fare per non fare premere
due volte consecutive il tasto "invia"...tipo come fa google su gmail... altrimenti
mi fa 2 volte il post dei dati....
ho provato a disabilitare il pulsante tramite javascript appena lo premo
ma poi ho notato che non mi fa il submit dei dati...

Gluck74 Profilo | Guru

la cosa è un po' complicata (almeno per le mie abitudini) per quanto riguarda il pager.
Spero che qualcuno ti dia un suggerimento migliore del mio.

Se cerchi su google trovi un sacco di personalizzazioni del pager. potresti prendere una di quelle.
In pratica consistono nel trasformare il pager automatico, in un template e metterci il codice che ti serve.
Diventa:

<GridView> <Columns> ... ... ... </Columns> <PagerTemplate> qui ricostruisci la paginazione </PagerTemplate> </GridView>

con i vari controlli/script che trovi in giro, ti fai un pager anche migliore di quello standard.
Devi poi solo mettere sul click del numero di pagina la tua funzione. In pratica in standard trovi:
<a href="javascript:__doPostBack('GridView1','Page$2')">2</a>

e tu lo devi trasformare in
<a href="javascript:myFunction('GridView1','Page$2');">2</a>

function myFunction(sender, param) { //setto la label con il valore che voglio __doPostBack('GridView1','Page$2'); }

Quindi ora come priorità devi trovare un pager custom. ce ne sono tanti in giro.


Per disabilitare il pulsante invece.... idem, su google trovi di tutto e di più. comunque apri un altra discussione se non ti riesce.
ciao
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5