Quando codifico mi piace usare le collezioni tipizzate, il metodo più veloce è usare "STC Generator" di Pierre oppure andare su MSDN alla voce "CollectionBase class", http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemcollectionscollectionbaseclasstopic.asp, copiare e incollare la classe di esempio (una collectionBase di Int16) e fare replace di Int16 con il tipo di cui voglio creare la collezione. Ma è sufficiente? No, a mio parere occorre sistemare anche il metodo OnValidate.
L'esempio MSDN inviterebbe a scrive:
protected override void OnValidate( Object value ) { if ( value.GetType() != Type.GetType("MyNamspace.MyType") ) throw new ArgumentException( "value must be of type MyType.", "value" ); }
Che bruttura dico io! :( Io prefesisco scrivere:
protected override void OnValidate( Object value ) ...