Buenas,
Lo que has hecho es lo que propuse yo en mi contestación. Es importante que uses una propiedad pública para acceder a esa variable (o campo), y esta variable debería estar declarada como privada. Esto es en lo que se basa la orientación a objetos.
Para tu segunda pregunta, tienes que crear eventos en el control y cuando insertes el control en el formulario asignarle los métodos que quieres que se ejecutan cuando lances esos eventos.
En este enlace te explica como hacerlo:
http://msdn.microsoft.com/es-es/libr...(v=vs.80).aspx
Saludos.