Nota: está viendo "aspnetForm" porque está utilizando una página maestra.
He encontrado su solución en este hilo ...
http://forums.asp.net/p/883974/929349.aspx
En resumen, esto es lo que la respuesta es a partir de ese enlace:
Aquí está el código responsable de ese error:
public override string UniqueID
{
get
{
if (this.NamingContainer == this.Page)
{
return base.UniqueID;
}
return "aspnetForm";
}
}
Como puede ver, cuando el contenedor de nombres es diferente de la página actual (algo que sucede cuando utiliza una página maestra) th e La propiedad UniqueID devuelve "aspnetForm". esta propiedad se representa en el atributo de nombre que se envía al cliente en la etiqueta del formulario. por lo tanto, si realmente lo necesita, puede crear su propio formulario heredando de htmlform y luego anular la propiedad UniqueID o la propiedad Name (esta puede ser una mejor opción).
Un ejemplo de clase HtmlForm personalizada podría ser así:
public class Form : System.Web.UI.HtmlControls.HtmlForm
{
public Form() : base() { }
public override string UniqueID
{
get {
if (this.NamingContainer == this.Page)
{ return base.UniqueID; }
return "f";
}
}
}
Nota: Usted puede sin duda cambiar el nombre de la forma de "f" para otra cosa, o que se lea un valor dinámico, digamos de un archivo web.config más o menos.
y se utiliza como tal
<%@Register tagprefix="LA" Namespace="Mynamespace"%>
...
<LA:form runat="server" id="frm">
...
</LA:form>
En ASP.NET 4, este comportamiento ha cambiado. Incluso si el control '