_objJugador.ListaDemarcaciones = New ArrayList 'Aquí estoy instanciando mi variable ListaDemarcaciones del objeto _objJugador que pertenece a mi clase c_jugador
For Each dr As DataRow In MiDataTable.Rows
_objDemarcacion = New c_demarcacion 'Aquí le digo que por cada REGISTRO que exista en mi tabla va a hacer una nueva instancia de mi objeto por lo tanto es como un nuevo objeto cada vez que encuentre un registro en mi tabla
_objDemarcacion.id = Cint(dr(0).ToString()) ' Supongo que el ID es numérico por lo tanto lo convierto en entero para asignarselo a tu variable 'id' , tambien supondré que el id se encuentra en tu primera columna es por eso que es dr(0).ToString()
_obDemarcacion.nombre = dr(1).ToString()
_obDemarcacion.siglas = dr(2).ToString()
'Ahora vamos a agregar el objeto [b]_objDemarcacion[/b] a mi Lista
_objJugador.ListaDemarcaciones.Add(_objDemarcacion) 'Aquí mi variable ListaDemarcaciones agrega a la lista valga la redundancia .... a mi variable.. es decir.. practicamente mi objeto _objJugador ya tiene la demarcacion correspondiente en su Lista..
Next
'TODO ESO LO VA A HACER POR CADA REGISTRO.. Y LISTO..