per quanto riguarda l'utilizzo delle skin in asp.net ho scoperto un comportamento che secondo me è limitante: non è possibile modificare a runtime la skinid di un controllo a meno che non venga fatto prima che il controllo in questione venga aggiunto alla collection dei controls del padre.
a mio avviso è limitante: lo scenario è quello di un imagebutton che al suo click deve cambiare il src dell'immagine stessa (il classico attivo/disattivo). ciò che sarebbe veramente comodo ed utile, sarebbe poter definire la skinid nel file skin sia per la modalità selected che per la unselected indicandone l'immagine sorgente, in modo che nel markup della pagina non compaia alcun riferimento alla jpg o gif di turno, ma solo al nome dello skinid.
in questo modo le skin diverrebbero veramente intercambiabili, potendo indicare immagini diverse a seconda della skin, senza che sia necessario toccare di una virgola il markup della pagina (a patto di utilizzare nei vari file skin dei vari theme gli stessi skinid ovviamente). ad esempio nel gestore dell'evento click dell'imagebutton basterebbe cambiare il valore dello skinid ed il gioco è fatto.
forse mi sto perdendo qualcosa, ma se la limitazione fosse proprio questa la trovo seccante.
saluti