Aggiunta di proprietà sconosciute (in fase di progettazione) a un ExpandoObject

sto solo esplorando il c # 4. Sto cercando di capire come stanno le cose dinamiche. Scusa se questa domanda è sciocca, nessuna esperienza in questo dominio.

Se ho un ExpandoObject e voglio aggiungere proprietà pubbliche (con get e set) ad esso al runtime, come potrei fare per farlo?

Ad esempio, ho un documentoTemplate e un documento, che ha una proprietà che punta verso il documentoTemplate. Questo documento contiene alcuni titoli di tag (ad es. Capacità sviluppate tra gli studenti), che dovrebbero essere affrontati durante la creazione del documento (ad esempio concentrazione, memoria ecc.). Quindi, non appena il modello è impostato nel documento, voglio creare una class, che ha proprietà con gli stessi nomi dei titoli dei tag nel modello, e quindi usando un elemento UI, come il PropertyGrid, posso avere l’utente inserisci i valori dei tag rispetto al tag Titoli.

Grazie per aver letto!