he trabajado ya un tiempo con c# pero hasta el mometo no he trabajado estos objetos, porque me he dedicado a aprender cosas avanzadas en modo consola. threads, sobrecargas de operadores, de metodos, indizadores, herencia, interfaces etc..pero le hechare una ojeadas a tu tema, espero que no tengas afan..
suerte