giusto, e' che qui e' tornato di moda visual basic, fatto confusione, ho scritto la sub in C# con l'handle.
mare dove sei ?
una cosa che manca è l'assegnazione dell'ID:
btn.ID = "Button1";
e poi (se la memoria non mi tradisce) dovrebbe essere
Button1.Click += new EventHandler(this.Button1_Click);
con la Sub Button1_Click nel codice, con la firma giusta.