Agregar un control de usuario a una página mediante programación mientras se conservan los controles ya presentes

Estoy tratando de agregar un control de usuario en un div en tiempo de ejecución. Puedo agregar el control sin probelem pero sobrescribe el control anterior agregado.

Básicamente, estoy tratando de agregar pasajeros a un sistema de viaje: los detalles de los pasajeros están en el control del usuario y no sé de antemano cuántos habrá. Tengo un botón agregar nuevo pasajero que debe agregar el nuevo control de usuario al div sin sobrescribir al pasajero anterior.

El código es c # /. Net 4.

He intentado guardar los datos de control en viewstate y volver a agregarlos con el nuevo, pero eso tampoco funciona. Aquí hay un fragmento del código que estoy usando

foreach (Control uc in p_passengers.Controls) {
        Passenger p = uc as Passenger;
        if (p != null) {
            p.SaveValues();            
        }
    }

sin embargo, p.SaveAs () (solo escribe los valores de control en ViewState) nunca se ve afectado.

Estoy seguro de que es algo estúpido pero ¿alguna idea?

Animo amigos

Respuestas a la pregunta(1)

Su respuesta a la pregunta