Un approccio non ortodosso potrebbe utilizzare un framework AOP come PostSharp per "tessere" un gestore prima/dopo che l'accessor viene chiamato, che attiva un evento.
È possibile creare una classe esterna contenente il codice di gestione pre e/o post per l'accesso alla proprietà, verificare se il valore della proprietà è cambiato tra pre e post e generare un evento.
Tenere presente che durante l'acquisizione del valore per il confronto (all'interno del codice del gestore), è possibile entrare in un ciclo infinito (si chiama la proprietà accessor, che chiama il gestore AOP, che chiama l'accessor e così via), quindi potrebbe essere necessario riflettere nella classe contenente questa proprietà per ottenere il campo di supporto.
fonte
2008-10-20 13:33:28
Questo è così .NET 1.1 :) Come Marc Gravell ha detto ... molto lavoro, poco beneficio. –