Ok mira, entonces el problema es que el div esta creado dentro del updatepanel por lo que me dices, veras, el AsyncPostBackTrigger te sirve para que no te haga un postback de toda la pagina, eso es cierto, pero si te hace un postback del updatepanel, en pocas palabras te renderiza todo el html que este dentro de ese updatepanel.
Lo que debes hacer es usar el updatePanel pero solo para el boton, y aufera crear un Div con Id, que sera al que le iras metiendo los demas Divs de manera dinamica desde tu codigo.
En otras palabras es algo asi
Código HTML:
<asp:updatepanel id="dpto_ 1">
---tu trigger
aca tu boton que manda a llamar al code behind
</asp:updatepanel>
<div id="divAdd" runat="server"></div>
y cuando mandes a llamar la funcion en vez de agregarle el nuevo div a dpto_ 1, se lo agregaras a divAdd, solo que no sera con lo mismo que usas ahora, porque tu utilizas
Código:
Panel1.ContentTemplateContainer.FindControl("dpto_ 1").Controls.Add(NuevoDiv)
y en realidad solo usarias algo como
Código:
divAdd.Controls.Add(NuevoDiv)
Espero te ayude eso, no lo tomes al pie de la letra, solo es un ejemplo.
Saludos.