Tempo fa scrissi un post riguardo l'uso del metodo GetPostBackClientEvent()  dell'oggetto Page per avere a disposizione uno snippet JavaScript che simulasse la PostBack (il classico _doPostBack()).

Già a quel tempo, ma anche per molti mesi prima, misi in guardia dall'andare ad interagire direttamente con quella funzione Javascript (ossia scriverla a manina), ma ancora in questi giorni sui NG se ne è tornato a parlare quindi meglio riprecisare ulteriormente:

L'implementazione delle funzioni Javascript iniettate dal framework per gestire le postback è interna. In quanto tale, _teoricamente_ qualsiasi service pack che passa potrebbe cambiarne il funzionamento e quindi rendere inutilizzabili o addirittura far comportare in maniera strana le nostre applicazioni che, per truccare le cose, vanno a giocare direttamente con _doPostBack, __EVENTTARGET, __EVENTARGUMENT e compagnia danzante.

Quindi come buona norma è sempre meglio _non_ andare a giocare direttamente col Javascript del framework, ma farselo servire dagli oggetti preposti! Dal 2.0 in avanti, l'oggetto ClientScriptManager espone il metodo GetPostBackEventReference(), che restituisce una stringa con il JavaScript che ci interessa.

Possiamo chiamarlo passando l'oggetto controllo che darà luogo alla postback e una stringa opzionale di argomenti, oppure utilizzando un oggetto PostBackOptions() ... a voler fare le cose per bene userei quest'ultima opzione :)